분류 전체보기 1203

Android Room

Room은 SQLite의 추상 레이어를 제공하여 SQLite의 객체를 매핑하는 역할을 한다. 쉽게 말하면 SQLite의 기능을 모두 사용할 수 있고, DB로의 접근을 편하게 도와주는 라이브러리 이다. 쉽게 말하면 SQLite 를 사용하는거를 편하게 해주는 라이브러리인데, 어떻게 사용하는지 한번 보겠습니다. room의 요소는 아래와 같습니다. Entity - Database 안에 있는 테이블을 Java나 Kotlin 클래스로 나타낸 것이다. 데이터 모델 클래스라고 볼 수 있다. DAO - Database Access Object, 데이터베이스에 접근해서 실질적으로 insert, delete 등을 수행하는 메소드를 포함한다. Database - database holder를 포함하며, 앱에 영구 저장되는 데..

Android(Kotlin) 2021.07.08

DI(Koin)

의존성주입(Dependency Injection) 에 대해서 많이 들어봤습니다. 다만, 이걸 왜 쓰는지, 안드로이드에서 어떻게 쓰는지에 대해 알아보겠습니다. 가장 중요한 왜 쓰는가? 에 대한 질문은 이거 안써도 잘 돌아가긴 하지만, 유지보수의 용이성과, 테스트의 용이함 때문에, DI를 씁니다. 안드로이드에서는 dagger, koin등으로 사용하는데, dagger의 경우 사용해보면 알겠지만, 쓸데없이 배워야 할 것과 어노테이션이 많습니다. 때문에 간단하게 사용할 수 있는 koin을 사용합니다. 아래는 간단 예제입니다. implementation 해주고 startKoin 이라고 하고, module을 넣어주고 module을 정의해줍니다 module에서 repository와 viewmodel을 import를 합..

Android(Kotlin) 2021.07.07