1.
출처 : Slice | Android 개발자 | Android Developers
제목 : Slice
요약 : Slice 에 대한 개발 문서입니다. Slice는 Google 검색 앱 내 및 Google 어시스턴트와 같은 다른 요소에 앱의 서식 있는 동적 양방향 콘텐츠를 표시할 수 있는 UI 템플릿입니다. 몇가지 빌더를 통해서 몇가지 정해진 템플릿을 제공합니다.
2.
제목 : Share your Gradle configuration with the Gradle Kotlin DSL — A guide for Android projects
요약 : Gradle Groovy 에서 KTS 로 변경하여 gradle 설정을 공유하는 과정을 5단계로 나누어서 설명합니다. buildSrc 모듈을 만들고 공유할 종속성 및 버전 관리 객체를 생성하고 app 모듈 빌드 스크립트를 kotlin 으로 변환하고 모듈간에 스크립트 구성을 공유하기 위해 공유할 모듈을 구성하고 settings.gradle 을 kotlin 으로 변환합니다.
3.
출처 : https://medium.com/proandroiddev/how-rxjava-chain-actually-works-2800692f7e13
제목 : How RxJava chain actually works
요약 : rxJava 의 chain 이 동작하는 방식을 그림으로 쉽게 설명합니다. 코드를 예로 들어서 subscribeOn을 중간에 바꿨을 경우 각 어떤 쓰레드에서 실행되는지 그림과 색으로 쉽게 표시합니다.
4.
제목 : An Invisible Keyboard
요약 : 특정상황에 키보드를 표시하지 않게 하기 위한 방법으로 보이지 않는 키보드를 사용한 방법을 설명합니다. webview 에서 특정조건에서 javascript 로 만든 키보드가 동작해서 이중으로 보이는 문제를 해결하기 위해 보이지 않는 키보드를 브로드캐스트를 이용해서 기본 키보드와 보이지 않는 키보드를 교체하며 구현한 방법을 설명합니다.
5.
출처 : Android performance optimization — ViewPagers + Fragment cache optimization
제목 : Android performance optimization – ViewPagers + Fragment cache optimization
요약 : viewPager 의 코드를 분석하여 viewPager 와 viewPager2 가 어떤 부분이 다른지 설명합니다. viewPager 에서 사전 로드 하는 것이 비효율적이라 생각해서 viewPager 에서 페이지가 표시될 때 데이터를 가져온느 지연 로딩 솔루션을 제안하고 viewPager2 코드를 viewPager 와 비교 분석해서 viewPager2는 기본적으로 사전 로드를 지원하지 않는 점을 설명합니다.
6.
출처 : How to choose the right database for your project
제목 : How to choose the right database for your project
요약 : 데이터베이스의 정의에 대해서 설명하고 SQL 과 NoSQL 의 차이점에 대해서 설명합니다. SQL 의 장점과 단점, NoSQL의 장점과 단점을 각각 설명하며 SQL의 종류와 NoSQL 의 종류에 대해서 설명하고 프로젝트에 맞게 선택하라고 권장합니다.
7.
제목 : Implement Kotlin Flow race/amb operator
요약 : rxJava 의 amb 와 같은 기능인 race 기능을 flow 로 구현하는 방법을 코드로 설명합니다. amb 는 여러 stream 중 가장 첫번째 item 을 배출하는 스트림만 전부 통과시키고 나머지는 모두 포기하는 방법입니다. 이 기능을 flow 로 구현하는 방법을 코드로 보여줍니다.
8.
제목 : Kotlin Flows Unit Tests
요약 : kotlin flow 단위 테스트에서 java.lang.IllegalStateException: This job has not completed yet 이 문제를 해결하기 위해 Turbine 라이브러리를 사용하여 unit test 를 하는 방법을 설명합니다. mockk 의 coEvery 와 coVerify 를 사용하여 테스트를 하는 방법을 설명합니다.
9.
출처 : API Calls Every X Seconds With Kotlin Flow in Android🚀
제목 : API Calls Every X Seconds With Kotlin Flow in Android🚀
요약 : 매 x 초마다 api 를 호출하는 방법에 rxjava 를 이용하는 방법과 , flow 를 이용하는 방법, 그리고 kotlin coroutine timer 를 사용하는 방법 중 flow 를 이용하여 구현하는 방법을 코드로 소개합니다. 나머지 2가지 방법에 대해서는 링크를 첨부합니다.
10.
출처 : 코루틴 플로우 내부 살펴보기 1
제목 : 코루틴 플로우 내부 살펴보기 1
요약 : 코루틴 플로우가 내부적으로 어떻게 동작하는지 그림으로 설명합니다. flow 가 생성되면 collect 가 중단함수이기 때문에 코루틴에서 호출되어야 하고, 코루틴에서 collect 를 호출하면 코루틴이 중단되고 emit 이 될 때마다 코루틴이 재개되며 동작하게 됩니다. 이때 flowOn 으로 dispatcher 를 변경하게 되면 채널 코루틴이 생성되어 처리되는 과정을 그림으로 설명합니다.
선정 : 코루틴 내부과정을 쉽게 설명하는 글이라 선정합니다.
소요시간 : 3시간 30분