본문 바로가기

IT/Android

8/29 read post

728x90
반응형

1.

출처 : https://proandroiddev.com/misconception-about-kotlin-jvmoverloads-for-android-view-creation-cb88f432e1fe

제목 : Misconception about Kotlin @JvmOverloads for Android View Creation

요약 : android custom view 생성시 ‘@JvmOverloads’ 를 사용하는데, 이 때 context 와 AttributeSet 만 있는 기본 생성자만 제공하면 되고 defStyleAttr 및 기본값을 제공할 필요가 없다고 설명합니다. 그 이유를 그림으로 설명합니다.

 

2.

출처 : 코틀린 플로우 내부 살펴보기 2

제목 : 코틀린 플로우 내부 살펴보기 2

요약 : 핫 플로우인 StateFlow 와 SharedFlow의 내부를 분석하여 설명합니다. 핫플로우에 flowOn이 사용되면 콜드 플로우와 달리 채널플로우를 생성하지 않고 최적화 하는 과정을 설명하고 SharedFlow와 StateFlow의 내부 코드를 설명합니다.

 

3.

출처 : https://medium.com/dipien/stop-generating-the-buildconfig-on-your-android-modules-7d82dd7f20f1

제목 : Stop generating the BuildConfig on your Android modules

요약 : BuildConfig 를 생성하면 빌드 속도 패널티가 있고(BuildConfig.java 로 생성되서 java + kotlin 혼합 모듈이기 때문에) 모듈마다 BuildConfig 가 있으면 개발자가 사용할 때 어느 것을 사용할지 혼란스럽고 BuildConfig.DEBUG 를 사용하게 되면 릴리스 코드와 비슷하지 않게 변경사항이 생기므로 좋지 않다고 설명합니다. 그래서 debug, release 소스를 분리시키는 방법을 설명합니다.

 

4.

출처 : 코루틴 예외 다루기

제목 : 코루틴 예외 다루기

요약 : Structured Concurrency(구조화된 동시성)에 대해서 설명하고 코루틴 내부적으로 취소가 어떻게 동작하는지 설명합니다. 크게 3가지 빌더타입 launch, async, coroutineScope 빌더들에서 취소가 어떻게 동작하는지 설명하고, 구조화된 동시성을 깨트리지 않기 위한 방법을 설명합니다.

선정 : 코루틴 예외처리에 대한 좋은 내용이라 선정합니다.

 

5.

출처 : Dependency Injection and Service Locator

제목 : Dependency Injection and Service Locator

요약 : DI 와 Service Locator 의 차이점에 대해서 설명합니다. 그리고 Service Locator의 단점들에 대해 설명합니다. 테스트를 어렵게 만들고, 다른프로젝트에서 재사용이 어렵고, Service Locator 클래스에도 의존하게 되는 점들입니다. 일반적으로 service locator 패턴은 안티패턴이지만 koin 은 유용한 기능으로 가치있기 때문에 좀 더 정확히 알고 사용하자고 합니다.

 

6.

출처 : Delegation Pattern in Kotlin

제목 : Delegation Pattern in Kotlin

요약 : 클래스 위임과 속성 위임에 대해서 설명하고, lazy, observable, vetoable, notNull 같은 기본 제공 대리자에 대해서 설명합니다.

 

7.

출처 : It’s time to abandon JavaPoet/KotlinPoet

제목 : It’s time to abandon JavaPoet/KotlinPoet

요약 : javaPoet 과 KotlinPoet 으로 코드를 작성하는 방법을 예제를 통해서 살펴본 뒤에 코드 가독성 및 유지보수성에서 두가지 방법이 안좋다고 설명을 하고 대안으로 템플릿 엔진을 이용한 방법을 설명합니다. 템플릿 엔진을 이용하면 생성 로직과 소스코드의 내용을 분리할 수 있기 때문에 코드 유지보수성, 가독성, 재사용성이 올라간다고 설명합니다.

 

8.

출처 : https://medium.com/proandroiddev/monitor-app-performance-with-firebase-28fddea6dbb0

제목 : Monitor app performance with Firebase

요약 : Firebase 성능 모니터링에 대해서 설명합니다. 성능 모니터링 SDK 를 추가하기만 하면 앱 시작 시간, 화면 렌더링, 네트워크 요청에 대해서 자동 기록됩니다. 디펜던시 추가하는 방법과 자동으로 계산되는 지속시간 매트릭의 세부항목을 설명합니다.

 

9.

출처 : 코틀린 어노테이션 — stdlib[1부]

제목 : 코틀린 어노테이션 — [1부]

요약 : 코틀린 어노테이션에 관한 설명입니다. AnnotationTarget 의 종류와 AnnotationRetention, 그리고 나머지 어노테이션에 관해서 설명합니다. kotlin annotation 패키지 안의 내용을 분석한 글입니다.

 

10.

출처 : 코틀린 어노테이션 — [2부]

제목 : 코틀린 어노테이션 — [2부]

요약 : 1부에 이어서 설명을 계속합니다. 2부에서는 jvm 패키지 내부에 존재하는 어노테이션에 대해서 설명합니다. JvmField, JvlOverload 등에 대해서 설명합니다.

 

소요시간 : 3시간 30분

728x90
반응형