본문 바로가기

안드로이드48

[이펙티브 코틀린] 5장. 객체 생성 1. 생성자 대신 팩토리 함수를 사용하라 2. 기본 생성자에 이름 있는 옵션 아규먼트를 사용하라 3. DSL 1. 생성자 대신 팩토리 함수를 사용하라 (206p ~ ) 1-1. 팩토리 함수란? 객체를 만드는 방법에는 여러 가지가 있다. 다양한 생성 패턴이 있으므로 상황에 맞게 사용하면 된다. 그중 하나인 팩토리 함수에 대해 알아보자. interface HelloMessage { fun hello(name: String): String } class HelloMessageKor : HelloMessage { override fun hello(name: String): String { return "안녕하세요 $name 님" } } 환영 인사를 해주는 HelloMessage라는 interface가 있고 이를.. 2022. 12. 5.
[번역] UI Layer - 안드로이드 앱 아키텍처 1. 왜 앱 아키텍처 설계를 해야 할까? 2. UI 레이어가 하는 일 3. UI 레이어를 구현하는 방법 3-1. UI 상태를 정의하는 방법 3-2. UI 상태의 생산을 관리하는 방법 3-3. UDF 원칙에 따라 관찰 가능한 데이터 유형으로 UI 상태를 노출하는 방법 3-4. 관찰 가능한 UI 상태를 소비하는 UI를 구현하는 방법 이 글은 안드로이드 공식문서 중 "앱 아키텍처 학습 과정" 페이지를 공부하며 작성한 글입니다. 개인적인 생각이나 의견이 포함되어 있음을 알려드립니다. 1. 왜 앱 아키텍처 설계를 해야 할까? 건물을 지을 때 설계도를 그려야 올바른 구조를 잡을 수 있다. 만약 올바른 구조가 없다면 건물이 무너질 수 있다. 앱도 마찬가지다. 올바른 구조가 없다면 앱도 무너지기 마련이다. 그렇다면 앱.. 2022. 11. 11.
[이펙티브 코틀린] 1장. 안정성 1. 책을 열며 1-1. 책을 읽게 된 계기 1-2. 지은이의 말 2. 안정성 2-1. 가변성을 제한하라 2-2. 변수의 스코프를 최소화하라 2-3. 최대한 플랫폼 타입을 사용하지 말아라 2-4. 예외를 활용해 코드에 제한을 걸어라 2-5. 결과 부족이 발생할 경우 null과 Failure를 사용하라 2-6. 적절하게 null을 처리하라 1. 책을 열며 1-1. 책을 읽게 된 계기 회사에서 안드로이드 팀원분들과 스터디를 하기로 했다. (정확히는... 막내인 나를 위해 해 주시는 것 같다!) 컴포즈 스터디를 진행하게 될 뻔 했으나 기초에 먼저 충실하자는 의미로 코틀린을 먼저 스터디하게 되었다. 스터디하기로 한 책은 바로 이펙티브 코틀린! 1달~2달 정도안에 책을 다 읽고 매번 이렇게 정리해서 포스팅을 하기.. 2022. 11. 4.
[번역] 앱 아키텍처 가이드 - Android 공식 문서 1. 아키텍처 1-1. 아키텍처란 무엇일까? 1-2. 그렇다면 왜 아키텍처가 필요할까? 2. 아키텍처 설계 원칙 2-1. 관심사 분리 2-2. 데이터 모델에서 UI 도출하기 2-3. 단일 소스 저장소 2-4. 단방향 데이터 흐름 3. 권장 앱 아키텍처 3-1. UI 레이어 3-2. 데이터 레이어 3-3. 도메인 레이어 4. 안드로이드 아키텍처를 위해 추천하는 방법들 4-1. Layered architecture 4-2. UI Layer 4-3. ViewModel 4-4. Lifecycle 4-5. Handle dependencies 4-6. Testing 4-7. Models 4-8. Naming conventions 이 글은 안드로이드 공식문서 중 "앱 아키텍처 가이드" 페이지를 공부하며 작성한 글입니.. 2022. 11. 1.
Bottom Sheet Dialog 예제 : Modal, Persistent, 모서리 둥글게 등 1. Bottom Sheet Dialog 1-1. 개념 1-2. 종류와 차이 2. Modal Bottom Sheet 2-1. 기본 예제 2-2. 모서리가 둥근 예제 2-3. 버튼이 있는 예제 2-4. Modal 위에 텍스트 2-5. RadioButton 사용 예제 3. Persistent Bottom Sheet 3-1. 기본 예제 3-2. 활용 예제 4. 알아두면 좋은 정보 4-1. Expanding Bottom Sheet 4-2. UI/UX 5. 전체 코드 1. Bottom Sheet Dialog 1-1. 개념 앱을 사용하다 보면 위 사진처럼 아래에서 빼꼼하고 나오는 창이 있다. 화면 가운데에 뜨는 Dialog와 별도로 이 창의 정식 명칭은 Bottom Sheet Dialog이다. 개인적으로 앱 처음 .. 2022. 9. 14.