본문 바로가기

IT/Android

9/7 read post

728x90
반응형

1.

출처 : Fragments: Rebuilding the Internals

제목 : Fragments: rebuilding the internals

요약 : FragmentManager 내부를 개선한 부분을 설명합니다. 기존 구조에서 연기된 fragment 때문에 view 는 보이지만 fragment 가 added 된 상태가 아닌 경우가 발생했는데, FragmentManager 에서 모든 fragment 에 적용되는 상태를 관리하고, FragmnetStateManager 는 fragment level 에서 상태를 관리하도록 책임을 분리해서 이전과 같은 문제를 없앤 것을 설명합니다.

 

2.

출처 : Explore Android | DataStore API (Part-2)

제목 : Explore Android | DataStore API (Part-2)

요약 : 데이터 스토어를 사용하여 UI 에서 동기적으로 데이터를 가져오는 방법, 저장된 모든 데이터를 지우는 방법, 그리고 storage 의 어느 디렉토리에 저장되는지, sharedPreference 에서 마이그레이션 하는 방법을 설명합니다.

 

3.

출처 : Printing Room DB queries in logcat

제목 : Printing Room DB queries in logcat

요약 : roomDB 에서 쿼리를 로그로 찍는 방법을 간략히 설명합니다. RoomDatabase 의 QueryCallback 을 builder 에 추가하면 확인할 수 있습니다.

선정 : 간단하지만 유용한 정보이기에 선정합니다.

 

4.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 3 — Dive 2

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 3 — Dive 2

요약 : 코루틴 채널 Fan-out 에서 코루틴 중 하나에 오류가 발생했을 때 수신 방식(for-loop, consumeEach) 에 따라 오류 전파 동작이 다릅니다. for-loop 는 수신 코루틴중 오류가 발생한 코루틴만 취소되고 나머지는 실행되지만, consumeEach 로 수신하면 수신하는 모든 코루틴을 취소하고 채널을 닫게 됩니다. consumeEach 내부 코드를 설명하며 이렇게 되어있는 부분을 설명합니다.

 

5.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 4

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 4

요약 : 코루틴의 기본 순차 실행과 async 를 이용한 동시 실행, 그리고 CoroutineStart.LAZY 매개변수를 이용한 지연실행에 대해서 설명합니다. 비동기 스타일 함수에서 구조화된 동시성에 대해서 설명합니다.

 

6.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 4 — Dive 1

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 4 — Dive 1

요약 : 코루틴 launch 와 async 내부구조가 어떻게 다른지 비교하여 설명합니다. 둘 다 AbstractCoroutine 을 상속받고 있으며 async 는 Deffed<T> 인터페이스를 구현하고 있고, 해당 인터페이스는 await 만 정의되어 있습니다.

 

7.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 5

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 5

요약 : 코루틴 디스패처에 대해서 설명합니다. Dispatcher.Unconfined, Default 에 대해서 설명하고 Context 의 Job 을 획득하는 방법, 코루틴의 자식 코루틴과 GlobaclScope 로 실행된 코루틴들은 실행된 스코프에 연관되지 않고 독립적으로 동작한다고 설명합니다. 그리고 부모 코루틴은 모든 자식 코루틴들의 실행이 완료될 때까지 기다리는 것 과 컨텍스트 병합, 명시적인 job 취소에 대해서 설명합니다. Thread-local data 를 코루틴에서 다루는 법도 설명합니다.

 

8.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 5— Dive 1

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 5— Dive 1

요약 : 데이터를 가져오는 비동기 작업을 callback 방식, rxJava 를 이용한 방식, 그리고 코루틴을 이용한 방식 3가지로 각각 구현하여 장단점을 비교하며 설명합니다.

 

9.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 5 — Dive 2

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 5 — Dive 2

요약 : 코루틴과 중단함수, Job 의 관계에 대해서 설명합니다. AbstractCoroutine 의 정의를 살펴보고 코루틴의 생성 되면 어떠한 과정을 거쳐가는지 설명하고 내부 로직을 설명합니다. createCoroutineUnintercepted -> intercepted -> resumeCancellable의 과정을 설명합니다.

 

10.

출처 : 코루틴 공식 가이드 자세히 읽기 — Part 5 — Dive 3

제목 : 코루틴 공식 가이드 자세히 읽기 — Part 5 — Dive 3

요약 : ThreadLocal 에 대해서 설명하고 코루틴은 항상 동일한 스레드에서 실행되지 않기 때문에 값이 달라질수 있는 결과에 대해서 설명합니다. 그리고 ThreadLocal 을 확장함수로 만든 CoroutineLocal을 설명합니다. CoroutineLocal 은 ThreadLocal.asContextElement() 확장함수이며, 같은 코루틴내에서 동일한 값을 가지도록 합니다. 이 내부에서 어떻게 그렇게 동작하는지 설명합니다.

 

소요시간 : 3시간 30분

728x90
반응형