분류 전체보기
나에게 SSAFY란... (SSAFY 7기 여러분 화이팅!!!)
나에게 SSAFY란, 취업 문을 열기 위해 올라가는 계단이다. SSAFY에 입과하기 전엔 막연히 취업을 하기 위해 아무거나 막 부딪혀보며 경험했지만, SSAFY에 입과한 이후에는 체계적으로 무엇을 해야할 지 계획하게 되었고 마치 계단을 오르듯 자연스럽게 준비가 되어가는 것 같다. 물론, 아무거나 막 부딪혀보는 것도 좋은 경험이다. 하지만 내가 느낀 점은 나의 길이 흐릿하게만 보일 뿐이었다. SSAFY를 통해 체계적으로 계획하고 이행하다보면 점점 나의 길이 선명해지는 것 같다. 난 SSAFY를 통해 안드로이드 개발자라는 불투명했던 꿈이 점점 투명하게 보이기 시작했고, 나의 길을 확신할 수 있는 계기가 되었다. 무엇이든 해낼 수 있다. 나는 SSAFY니까 !!!!!! [ SSAFY 6기 자바칩 코드팍치노 ]..
[Android] ContentResolver, ContentProvider에 관해
ContentProvider는 어떤 앱이 다른 앱으로 데이터를 제공하고자 할 경우 사용한다. 요청은 ContentResolver 클래스에 의해 처리된다. URI ( Uniform Resource Identifier ) 데이터의 위치를 표시하고 데이터를 가져오기 위해 사용 ex) content://authority/path/id - content:// 문자열이 URI 을 나타냄 - authority 중복되지 않아야 하며 패키지 명을 사용하는 것을 권장 - path 가상의 경로 - id 있으면 단수, path 까지만 있으면 복수 Query parameter resolver.query( , , , , ) - projection : 칼럼을 필터링 - selection : 행을 필터링하는 방법 - selectio..
[Androdi] Fragment에 관해..①
Fragment는 Activity와 마찬가지로, 사용자에게 UI 화면을 제공하는데 사용하는 컴포넌트이다. 여러개의 Fragment를 하나의 Activity에 결합해 다양한 화면 구성의 UI를 제작 가능하다. Fragment는 onCreate, onCreateView, onViewCreated, 그리고 companion object로 newInstance를 구현하여 생성할 수 있다. newInstance로 생성하는 이유는 무엇일까? -> Framework에 의해 제거되었다가 재생성될 때 유실된다. 만약 arguments를 bundle로 전달하면 재생성시 전달되므로, 유실되지 않는다. onCreateView에서 layout을 inflate하는 단계로 뷰 바인딩을 진행하고, UI에 대한 작업은 진행하지 않는다..
[Android] Task에 관해
Task란 무엇인가? -> 관련된 실행 Activity를 순서대로 묶어서 관리하는 것이다. 만약, 서로 다른 package의 activity가 실행되더라도 하나의 실행 흐름 안에 있게 된다. Task는 stack의 형태로 구성된다. 즉, 실행되는 activity들이 차곡차곡 쌓이는 구조이다. (우리가 뒤로가기 키를 누를 때, 맨 위의 activity가 사라지고 이전의 activity가 나타나는 것이 이것 때문이다.) 만약, Task를 제어하지 않는다면 ?? 예를 들어 은행 뱅킹 앱이 있다고 하자. 은행뱅킹앱은 로그인 -> 계좌조회 -> 계좌이체 같은 Activity들로 구성되어 있다. 1로그인 -> 2계좌조회 -> 3계좌이체 -> 4이체완료 -> 5계좌조회 위와 같은 경우에서... 2계좌조회와 5계좌조회..
[Android] Intent에 관해
Android의 애플리케이션을 구성하는 네 가지 기본 요소가 무엇이냐? 1. Activity 2. Service 3. Broadcast Receiver 4. Content Provider Intent는 해당 요소들 간에 작업 수행을 위한 정보를 전달하는 역할을 한다. Intent를 통해 메시지를 전달하고, 데이터를 주고받기도 한다. Intent는 명시적 인텐트와 암시적 인텐트로 구분한다. 명시적 인텐트가 무엇인가? -> 실행하고자 하는 컴포넌트 이름과 클래스 명이 명시적으로 작성되 호출할 대상을 확실히 알 수 있는 경우에 사용. ex) 실행하고자 하는 컴포넌트가 NextActivity일 때 val intent = Intent(this, NextActivity::class.java) 암시적 인텐트는 무엇인..