[Android, MVVM, Coroutine] 활용 #2 - Room에서 Coroutine 사용 이전 포스팅에서 Android에서 Coroutine이 사용 가능하도록 설정 된 상태라면 Room에서 coroutine을 이용한 DB 접근방법에 대해서 알아봅니다. 상세내용이 담긴 포스팅 2019/11/25 - [개발이야기/Android] - Android Room & Coroutines 2019/11/04 - [개발이야기/Kotlin] - [Kotlin] 코틀린 - 코루틴#10- Asynchronous Flow(1/2) 2019/11/16 - [개발이야기/Kotlin] - [Kotlin] 코틀린 - 코루틴#11- Asynchronous Flow(2/2) room 2.1에서 부터 coroutine을 지원하기 시작했고 room 2.2부터 Flow를 지원합니다. 실제로 이 두가지를 어떻게 호출하고 사용하는지 .. 개발이야기/Android 5년 전
Android Room & Coroutines 해당 내용은 하기 링크를 번역한 내용입니다. https://medium.com/androiddevelopers/room-coroutines-422b786dc4c5 물론 추가적인 의역 및 설명이 추가되어 있습니다.Room 2.1에서 부터 Kotlin coroutine을 지원하기 시작했습니다. 2.2 버전부터는 return값으로 flow도 제공하지요~ Room에서 coroutine을 지원하면서 DAO에서 suspend function을 만들어 선언해 놓으면 해당 function들은 main thread에서 동작하지 않습니다. 따라서 DB 접근할때 따로 background thread를 만들어서 접근할 필요가 없어졌습니다. 아래에서는 이를 사용하는 방법과 내부적으로 어떻게 동작하는지와 test는 어떻게 진행해.. 개발이야기/Android 5년 전
Android Dev Summit 2019 - What's new in Room 안드로이드 2019 Dev Summit에서 발표된 Testing Coroutines 자료를 정리합니다. Room history Async QueriesRoom에서는 Rx에 대한 지원을 제공합니다. 2.1부터 coroutines에 대한 suspend function을 제공했고, 2.2에서 observable한 Flow를 제공하면서 완벽한 coroutine을 지원합니다. FlowFlow는 kotlin에서 새로이 제공하는 coroutine builder입니다. (1.2.0에는 없었는데..1.3.2를 보니 갑자기 생겨 있더군요..) 비동기로 동작하며 Cold stream이기 때문에 lazy하게 동작시킬 수 있습니다. 또한 intermediate operator와 terminal operator가 존재합니다.co.. 개발이야기/Android 5년 전
Android Architecture Components #6 - Room Room Persistence LibraryRoom은 SQLite의 추상화 layer로 SQLite의 모든 기능을 활용하여 유연한 database 접근을 가능하게 한다.core Frameworkd이 raw SQL을 사용할수 있도록 지원하지만 low level로 접근 가능하고 다음과 같은 항목으로 인해 많은 공수가 들어간다raw SQL은 complie time에 확인할 수 없기 때문에 데이터의 구조가 변경되는 경우 영향을 받은 SQL을 수동으로 수정해야하며, 이는 공수가 많이 든다.SQL 결과를 java object로 만들기위해 많은 상용구(상투적인) 코드들이 들어간다. Room의 3가지 componentDatabase: database의 holder를 만든다. annotation으로 entities(Ta.. 개발이야기/Android 7년 전
Android Architecture Components #1 Guide to App Architecture Android Libraries - Architecture Components 안드로이드 O OS와 함께 새로운 라이브러리가 추가되었습니다. Lifecycle을 handling 할수있는 방법LiveDataViewModelRoom Persistence Libraray위에 언급된것들을 묶어서 Architecture Components라고 합니다. 여기서는 위 네가지에 대한 대략적인 concept만 얘기합니다. (overview 정도라고 보시면 됩니다.) 원문은 아래 링크에 있으니 참고 바랍니다. https://developer.android.com/topic/libraries/architecture/guide.html ViewModelviewModel은 특정 activity나 fragment에 데이터를 제공.. 개발이야기/Android 7년 전