본문 바로가기

IT/Android

10/3 read post

728x90
반응형

1.

출처 : Suspending Lambdas in Kotlin

제목 : Suspending Lambdas in Kotlin

요약 : 코루틴에서 서스펜드 키워드에 대해서 간략히 설명하고 람다를 return 하는 형식을 서스펜드와 어떻게 조합하는지에 대해서 설명합니다. return type 을 (suspend () → File) 로 할 수도 있지만 return type 을 suspend { … } 로 할 수도 있습니다.

 

2.

출처 : Effective extension function refactoring in Kotlin: companion object use case

제목 : Effective extension function refactoring in Kotlin: companion object use case

요약 : extension function 은 테스트 하기에 좋지 않아 interface 에 companion 객체를 사용하는 방법으로 리팩토링 하는 과정을 순차적으로 설명합니다.

 

3.

출처 : https://medium.com/gitconnected/understanding-reflection-using-kotlin-a5874bf63010

제목 : Understanding Reflection using Kotlin

요약 : 리플렉션에 대해서 설명하고, 리플렉션을 하기 위한 라이브러리 종속성 추가 방법과 이를 통해 class, object, private 함수, property 에 접근하는 방법을 설명합니다.

 

4.

출처 : Exploring Google Play App Signing

제목 : Exploring Google Play App Signing

요약 : 구글 플레이 앱 서명에 대해서 설명합니다. 기존 앱서명의 문제점은 키를 분실하면 앱을 업데이트 할 수 없는 문제, 키가 악의적인 의도를 가진 누군가에 의해 손상될 수 있다는 점입니다. 구글 앱 서명을 사용하면 구글이 키를 관리합니다. 서명 프로세스에 2가지 키가 있는데 앱 서명 키와 업로드 키입니다. 앱 번들은 구글 앱 서명 방식을 사용해야만 합니다. 이후 이 과정을 자세히 설명합니다.

 

5.

출처 : https://medium.com/proandroiddev/an-opinionated-guide-on-how-to-make-your-kotlin-code-fun-to-read-and-joy-to-work-with-caa3a4036f9e

제목 : An opinionated guide on how to make your Kotlin code fun to read and joy to work with

요약 : 코틀린 작성시 좋지 않은 코드에 대해서 설명합니다. 매개변수가 2개 이상일 때는 여러줄에 나눠서 쓰는 것이 좋고, 조건식 대신 let, run 을 사용하는 것을 지양하라고 합니다. 2개 이상의 람다에는 명명된 인수를 사용해야 하고, if else 보다 when 을 추천합니다. var 보다 val 을 추천하고 가변적인 변수를 외부에 노출하지 않도록 합니다. 컬렉션과 같은 작업은 공용 메서드가 있는지 확인하고 중위함수를 남용하지 말라고 합니다.

 

6.

출처 : https://medium.com/gitconnected/android-basic-app-using-mvvm-hilt-coroutines-flow-retrofit-and-coil-433763542ee0

제목 : Android: Basic app using MVVM, Hilt, Coroutines, Flow, Retrofit, and Coil.

요약 : MVVM 구조를 가지면서 hilt, 코루틴, flow, retrofit, coil 을 사용한 예제 코드에 대해서 설명합니다. 간단한 데이터 클래스를 선언한고 api interface 와 hilt 를 사용한 네트워크 모듈, remoteDataSouce, 그리고 repository 를 구현하는 코드를 설명합니다.

 

7.

출처 : A Cool Animation for Debit/Credit Cards

제목 : A Cool Animation for Debit/Credit Cards

요약 : 직불/신용 카드 애니메이션에 대해서 설명합니다. 카드 레이아웃을 만들고 분산형 카드 애니메이션, 카드 수집 애니메이션, 그리고 카드를 앞으로 뒤집는 애니메이션 세가지를 구현합니다. 그리고 카드 순서를 바꾸기 위해 마지막 카드를 내리고 나머지 카드를 올리는 애니메이션을 구현하는 방법을 설명합니다.

 

8.

출처 : Android tasks and back stack

제목 : Android tasks and back stack

요약 : task 와 백스택에 대해서 설명합니다. flag_activity_new_task, flag_activity_clear_task, flag_activity_multiple_task, flag_actvity_clear_top, flag_activity_single_top, flag_activity_no_history, flag_activity_no_animation 에 대해서 설명합니다.

 

9.

출처 : Introduction to Flow, Channel and Shared/StateFlow

제목 : Crash Course Kotlin Flows, Channels and Shared/State Flows

요약 : 코루틴 flow 와 rx 로 구현시에 어떻게 코드가 달라지는지 비교하며 설명합니다. 일반적인 데이터 방출 형태를 비교하고, 구독(수집)을 비교합니다. 콜드 플로우를 핫 플로우로 변환하는 (sharedFlow 로 변환하는) shareIn 에 대해서 설명합니다. 채널과 플로우의 차이에 대해서 설명합니다. mutableSharedFlow 와 mutableStateFlow 에 대해서 설명합니다. flow 는 rx의 Flowable,Observable,Single 과 같고 channel 은 subject, stateFlow 는 BehaviorSubjects, sharedFlow 는 publishSubjects 와 같습니다.

선정 : Rx 와 flow 의 핫 스트림, 콜드 스트림에 매핑되는 코드를 잘 비교해 놓아 선정합니다.

 

10.

출처 : Auto Inflated-Cleared View Binding in Fragments Using Delegation

제목 : Auto Inflated-Cleared View Binding in Fragments Using Delegation

요약 : 위임을 사용한 auto inflated cleared view binding 에 대해서 설명합니다. fragment 는 view 보다 생명주기가 길기 때문에 메모리 릭이 발생할 수 있습니다. 따라서 위임을 이용하여 생명주기를 관찰하고 fragment 가 destory 될 때 메모리 해제하는 코드를 설명합니다.

소요시간 : 2시간

728x90
반응형