ANDROID/ARCHITECTURE 2

[Android] ROOM Database 라이브러리 사용하기! (MVVM-2)

1. ROOM 이란 무엇인가? ROOM은 ORM(Object Relational Mapping library)로, 안드로이드 내부 디비를 구현할 수 있는 AAC 중 하나입니다. ROOM은 SQLite의 추상레이어 위에 제공하고 있으며 SQLite의 모든 기능을 제공하면서 활용하고 있습니다. 가장 일반적인 사용 사례로는 데이터를 캐싱하는 것입니다. 대부분의 애플리케이션에서, 와이파이, 데이터가 통하지 않는 오프라인 상황에서도 데이터들을 볼 수 있습니다. 2. RoomDB 의 3가지 구성요소 앞서, MVVM 구조를 설명했었는데, 그중 Model에 해당합니다. - 데이터베이스 @Database로 Annotation된 클래스는 추상 클래스여야 합니다. Entity, version등을 적어줍니다. @Dao로 처리..

[Android] MVVM 패턴이란?! (feat. 예제 소개)

[Android] MVVM 패턴이란?! (feat. 예제 소개) ※ 안드로이드의 아키텍처 MVVM 을 공부해보자! [들어가기] ※ 디자인 패턴을 생각하게 된 이유 안드로이드 개발을 하면서 어떻게 구조화를 할지, 설계 단계에서 시간을 많이 안 쏟았던 것 같다. 해커톤과 같은 짧은 기간 내에 프로젝트를 진행하며(SOPT APPJAM) 모든 것을 완벽하게 구현해야한다는 급박함이었을까? 이제는 좀 더 구조적이고 모듈화된, 깔끔하고 유지보수가 쉬운 코드를 짜보려한다. ※ 어떻게 진행될까? - 간단한 프로젝트와 함께 MVVM을 적용해보자 - MVVM 구조에 대해 정확한 이해와 고민을 해보는 시간을 갖자 - 더 나아가, DI, Coroutine, DataBinding, RxJAVA 등을 프로젝트에 적용해보자 [시작하..