해당 글은 https://newsletter.jorgecastillo.dev/p/the-composable-node-tree 번역 글입니다. The Composable node tree 🌲 Learn how the Jetpack Compose node tree is built, updated, how changes to it are applied, the different types of nodes on it, and more 🔥 newsletter.jorgecastillo.dev Jetpack Compose 노트 트리가 빌드되고, 업데이트 되고, 어떤식으로 변경사항이 적용되고 다양한 노드 타입들에 알아보겠습니다. 컴포저블 노드 트리가 어떤식으로 표현되고 생성되고 유지 되는지에 대한 글은 인터넷에 많지 ..
해당 글은 https://newsletter.jorgecastillo.dev/p/stateful-vs-stateless-composables 의 번역본입니다. Stateful vs Stateless Composables Differences and when to use each one newsletter.jorgecastillo.dev 해당 포스트는 Jetpack Compose and internals course 에서 "State" 주제를 가져와서 짧게 소개하는 포스트 입니다. 링크에서 전체 개요에 대해 알아보세요 In View world (뷰 시스템) Compose 전에는 대부분 ViewModel, Presenter, Controller 등을 Activity, Fragment 와 같은 최상단 루트에서..
https://newsletter.jorgecastillo.dev/p/modifiers-order-of-precedence 번역한 글이에요 Modifiers: order of precedence A basic visual example on how modifier order affects the final result in Jetpack Compose newsletter.jorgecastillo.dev Modifiers: order of precedence (Modifier 의 우선순위) 원형 모양의 이미지가 있다고 가정해볼게요. 원형 효과를 만들기 위해서는 clip(자르기) 해야해요. modifier 의 clip 속성을 이용할 수 있어요. 그림자와 함께 사용하고 싶은 경우에는 modifier 에서 제공..
https://newsletter.jorgecastillo.dev/p/the-color-of-composable-functions 의 번역 버전입니다. The color of Composable functions 🖍️ A separate category of functions newsletter.jorgecastillo.dev Composable 함수들은 표준 함수와 다른 제한 사항과 기능들을 가지고 있습니다. Composable 함수들을 다른 형식으로 매우 구체적인 관심사를 모델링 합니다. 이러한 차이들은 "함수의 색상(특성 정도로 생각하면 됩니다)"의 형태로 이해할 수 있습니다 여러분야의 함수 형태 중에 한 부분을 차지하고 있습니다. Function coloring (함수의 색) "Function c..
해당 포스트는 https://newsletter.jorgecastillo.dev/p/using-jetpack-compose-with-mvvm 를 번역하였습니다. Using Jetpack Compose with MVVM How to integrate Compose efficiently with an MVVM architecture newsletter.jorgecastillo.dev 몇 주 전에 사람들이 어떤 아키텍쳐 패턴에 익숙한지 알기 위해서 트위터에서 설문조사를 진행했습니다. 그러한 이유로 Compose + MVVM 으로 간단한 포스트를 작성하기로 했습니다. First, the solution (첫번째 솔루션) 아래 코드는 NowInAndroid 에 존재하는 코드의 일부분 입니다. 실제 코드를 보고 싶..
해당 블로그의 글은 https://developer.android.com/topic/architecture/ui-layer 에 대한 정리하는 글 입니다. 우리는 UI Layer 와 관련된 많은 Entity 들을 살펴보고, 각각의 부분에 대해 이해하고, 모범 사례에 대해 이야기해볼 예정이에요. 해당 시리즈의 마지막에서는 우리는 UI layer 에서 발생하는 일반적인 것들과, UI Layer 안에서 로직과 상태를 처리할 때 어떤식으로 처리할 수 있는지도 이해할 수 있어요. 이와 관련있는 다양한 API 들의 어떤식으로 사용하는지 설명하고 또 확실하지 않은 상태에서도 도움을 줄 수 있는 의사 결정 트리를 제공할 예정이에요. 파트 1 에서 UI 와 UI state 에 대해 다뤄봤어요. 이를 통해 UI Layer ..
Crash Course on the Android UI Layer (안드로이드 UI Layer 에 대한 단기 속성 과정정도로 볼 수 있을 것 같아요) (전 Google Android DevRel 로 믿고 보는 아티클이에요. 다만 저의 번역 실력을 믿으시면 안됩니다. 중간중간 주관적인 생각도 들어갈 예정이에요.) 해당 블로그의 글은 https://developer.android.com/topic/architecture/ui-layer 에 대한 정리하는 글 입니다. 우리는 UI Layer 와 관련된 많은 Entity 들을 살펴보고, 각각의 부분에 대해 이해하고, 모범 사례에 대해 이야기해볼 예정이에요. 해당 시리즈의 마지막에서는 우리는 UI layer 에서 발생하는 일반적인 것들과, UI Layer 안에서 ..
LiveData, Coroutine, Flow 를 이용한 반응형 UI - Part 1 LiveData, Coroutine, Flow 를 이용한 반응형 UI - Part 1 https://medium.com/androiddevelopers/livedata-with-coroutines-and-flow-part-i-reactive-uis-b20f676d25d7 LiveData with Coroutines and Flow — Part I: Reactive UIs This article is a summary of the t.. nanamare.tistory.com LiveData, Coroutine, Flow 를 이용한 반응형 UI - Part 2 LiveData, Coroutine, Flow 를 이용한 반응형..
LiveData, Coroutine, Flow 를 이용한 반응형 UI - Part 1 Jetpack 에서 제공하는 AAC 는 안드로이드 개발에 간편한 기능들을 제공합니다. 따라서 코루틴의 작업 및 취소(Jobs and cancellation)들에 대해서 걱정할 필요가 없습니다. 단순히 작업의 범위(scope of operation)를 잘 선택해주기만 하면 됩니다. 다양한 스코프에 대해 알아봅시다! ViewModel Scope 해당 스코프는 코루틴을 사용할 때 가장 많이 사용하는 스코프중 하나입니다. 보통 ViewModel 에서 데이터 관련한 작업들이 시작되기 때문입니다. 따라서 viewModelScope extension 을 사용하면, ViewModel 의 onCleared 메서드가 호출될 때 자동으로 ..