no image
[Android Studio] 뷰와 뷰의 속성
뷰의 속성 뷰(View)는 화면에 들어가는 각각의 요소를 말하며 일반적으로 컨트롤이나 위젯이라고 불린다. 즉, 사용자의 눈에 보이는 화면의 구성 요소들이 바로 뷰이다. 이러한 뷰를 여러개 포함하고 있는 것을 뷰 그룹(ViewGroup)이라고 하며, 이 뷰 그룹 안에서 뷰의 위치를 지정할 수 있다. 뷰 그룹은 여러개의 뷰를 담고 있는 그릇과 같아서 뷰와는 약간 다르지만 뷰 그룹 안에는 뷰 뿐만 아니라 또 다른 뷰 그룹도 넣을 수 있다. 이것은 뷰그룹이 뷰를 상속하여 만들어졌기 때문이다. 여러개의 뷰를 담고 있는 뷰그룹 역시 하나의 뷰라고 했을 때 또 다른 뷰그룹이 이 뷰그룹을 뷰처럼 다룰 수 있다. 이러한 뷰와 뷰그룹의 관계는 여러 가지 디자인 패턴 중에 컴포지트 패턴(Composite Pattern)을 ..
2024.04.12
[Android Studio] Intent(인텐트)
Intent의 4대 컴포넌트 액티비티(Activity) 서비스(Service) 브로드캐스트 리시버(Broadcast Receiver) 컨텐트 프로바이더(Content Provider) 이 각각의 컴포넌트 간의 통신을 맡고 있는 것이 Intent(인텐트)이다. Intent 사용법 1. 명시적 Intent - 화면 전환 // (현재 액티비티, 이동하고 싶은 액티비티) Intent intent = new Intent(MainActivity.this, SubActivity.class); // 액티비티 이동 startActivity(intent); - A activity에서 B activity에 데이터 전달 // (현재 액티비티, 이동하고 싶은 액티비티) Intent intent = new Intent(MainA..
2024.04.12
no image
[Android Studio] 내부 파일 살펴보기
MainActivity.java 살펴보기 전체 창은 왼쪽 가운데, 그리고 오른쪽 부분으로 구분되어 있다. 그중 가운데 부분에는 두 개의 탭이 있다. [MainActivity.java]는 자바 소스 파일이다. 생성한 안드로이드 프로젝트에서는 자바 언어를 사용하기 때문에 java라는 확장자를 가진 파일이 만들어지며 표준 자바의 문법으로 작성되어 있다. 그래서 자바로 프로그램을 만들어 본 경험이 있다면 이 파일이 많이 익숙할 것이다. 그러나 자세히 코드를 살펴보면 평범한 자바 프로그램과 형태가 조금 다르다는 것을 알 수 있다. package com.example.myapplication; import android.os.Bundle; import androidx.activity.EdgeToEdge; impor..
2024.04.12
no image
[Android Studio] TextView 기본 사용법
1. TextView 사용법을 알아보자. TextView는 안드로이드 UI를 구성함에 있어 화면에 텍스트를 표시하는 기능을 담당한다. 안드로이드에서 제공하는 위젯 중 가장 많이 사용되는 위젯이다. 텍스트 출력 기능을 가진 기본 위젯이므로, 텍스트와 연관된 기능을 포함하는 Button 또는 EditText의 부모 클래스이다. 2. 코드를 입력해보자. TextView를 화면에 표시하기 위해서는 Layout 리소스 XML에 TextView를 추가하면 된다. Layout/activity_main.xml 결과 3. JAVA 소스에서 TextView의 텍스트를 변경해보자. 앱 실행 시 처음 보여질 텍스트를 지정하기 위해 "text" 속성을 사용하였는데 만약 앱 실행 중 동적으로 텍스트를 변경하려면 어떻게 해야 할까..
2024.04.12
no image
[Android Studio] 프로젝트 생성 방법
프로젝트 생성 방법 안드로이드 2024.04.12일 기준으로 자바 언어 기반으로 프로젝트 생성 방법을 알아보자. 1. New Project 창 "Empty Views Activity"를 선택해 Next로 이동한다. 2. 프로젝트 설정 적절한 이름을 선택 후 언어와 build Configuration을 선택한다. 3. Finish를 눌러 프로젝트를 생성한다.
2024.04.12
[Spring Boot] @RestController
서론 @RestController는 @Controller와 @ResponseBody의 조합이다. @RestController는 단순히 객체만을 반환하고 객체 데이터는 JSON 또는 XML 형식으로 HTTP 응답을 담아서 전송한다. 따라서 return 값이 @Controller와 달리 반환 값으로 뷰를 찾는 것이 아닌, HTPP 메세지 바디에 바로 입력하게 된다. @RestController @RequiredArgsConstructorpublic class TestController { private final MemberService memberService; @GetMapping("api/board/member") public Member findMember(@RequestParam("id") Stri..
2024.04.10
no image
[Spring Boot] @Controller
서론 Spring에서 클래스에 컨트롤러를 지정해주기 위한 애노테이션은 2가지가 있다. 이 2가지의 주요 차이점은 HTTP ResponseBody가 생성되는 방식, @Controller + @ResponseBody 조합이 @RestController라고 말할 수 있다. 오늘은 Controller에 대해 알아보자 @Controller @Controller는 Spring MVC의 컨트롤러 애노테이션이며 주로 View(화면)을 반환하기 위해 사용한다. @Controllerpublic class TestController { // @RequestMapping(value = "api/board/update", method = {RequestMethod.GET}) @GetMapping("api/board/update..
2024.04.10
자바 [Algorithm] 알고리즘 - 구간 합
구간 합 구간 합은 합 배열을 이용하여 시간 복잡도를 더 줄이기 위해 사용하는 특수한 목적의 알고리즘이다.코딩 테스트에서 사용 빈도가 높으니 꼭 알아야 한다.구간 합의 핵심 이론구간 합 알고리즘을 활용하려면 먼저 합 배열을 구해야한다.배열 A가 있을 때 합 배열 S를 구하는 공식S[i] = A[0] + A[1] + A[2] + … + A[i-1] + A[i] // A[0] 부터 A[i]까지의 합합 배열 S를 만드는 공식S[i] = S[i-1] + A[i]i에서 j까지 구간 합 구하는 공식S[j] - S[i-1]A[2] ~ A[5] 구간 합을 합 배열로 구하는 과정S[5] = A[0] + A[1] + A[2] + A[3] + A[4] + A[5]S[1] = A[0] + A[1]S[5] - S[1] = A[..
2024.03.19