본문 바로가기
반응형

MVVM12

Flutter - 11. TodoList App (4) TodoList에 BLoC 패턴을 적용해보자. 전 포스팅에서 Database를 연동하는 작업을 마쳤었다. 문제는 UI를 그려내는 Widget에서 상태와 데이터 접근을 모두 하기 때문에 역할 분리가 제대로 되지 않았다. 상태가 복잡해질수록, 데이터가 많아질수록 Widget이 가지는 역할이 너무 많아지며, 관리가 점점 어려워지고 스파게티 코드가 될 수 있다. 이러한 문제를 해결하기 위해서 Android, iOS 진영은 MVVM, MVP, RIBs 등의 아키텍처 패턴, 클린 아키텍처 패턴들을 도입한다. 클린 아키텍처 패턴은 위와 같다. 이에 대한 상세한 내용은 생략하겠다. 이를 위한 포스팅은 아니니. 아무튼, 이러한 패턴 적용의 이유는 서로의 역할을 분리하고 의존성을 줄인다. 어떤 한 모듈에 변화가 생겨도 다른 모듈에 변화가 없거나 최소화하고, 유지보수성.. 2021. 1. 27.
[Android] Kotlin + MVVM + AAC 로 Todo 앱 만들기 - 6 (ViewBinding, DataBinding) 한참전에 DataBinding을 적용하기로 했었는데, 까맣게 잊고 있었다. 내 포스팅을 보고 공부하시는 분께서 DataBinding을 요청하셔서 추가로 포스팅한다. (게으른 나를 반성..) 귀찮으신 분들을 위한 최종코드 Github : github.com/DuItDDu/Android-Codelabs/tree/master/MyTodo 1. ViewBinding, DataBinding이 무엇인가? developer.android.com/topic/libraries/view-binding 뷰 결합 | Android 개발자 | Android Developers 뷰 결합 기능을 사용하면 뷰와 상호작용하는 코드를 쉽게 작성할 수 있습니다. 모듈에서 사용 설정된 뷰 결합은 모듈에 있는 각 XML 레이아웃 파일의 결합.. 2021. 1. 20.
[Android] Dependency Injection (a.k.a DI) - 4. 기반코드를 Hilt로 리팩토링 해보자! 자, 이번 포스팅에선 Hilt를 사용해보자. developer.android.com/training/dependency-injection/hilt-android?hl=ko Hilt를 사용한 종속 항목 삽입 | Android 개발자 | Android Developers Hilt는 프로젝트에서 수동 종속 항목 삽입을 실행하는 상용구를 줄이는 Android용 종속 항목 삽입 라이브러리입니다. 수동 종속 항목 삽입을 실행하려면 모든 클래스와 종속 항목을 수동으로 구성 developer.android.com Hilt에 대해선 위 문서를 참고 하는것을 추천한다. 현재까지 나온 버전은 alpha 이지만, 드로이드나이츠를 보니 많은 개발자분들이 벌써 Dagger, Koin에서 Hilt로 갈아타고 있는 것 같았다. 나 .. 2020. 10. 25.
[Android] Dependency Injection (a.k.a DI) - 3. 기반코드를 Koin으로 리팩토링 해보자! 자, 이전 포스팅에서 작성한 Koin으로 리팩토링 해보자. github.com/InsertKoinIO/koin InsertKoinIO/koin Koin - a pragmatic lightweight dependency injection framework for Kotlin - InsertKoinIO/koin github.com Koin에 대해선 위 사이트를 방문해보는 것을 추천한다. 간략하게 말하면, Kotlin으로만 작성된 DI Framework이다. Dagger에 비해 상대적으로 쉽게 작성이 가능하다. 단점으로는 런타임, 실제 앱이 실행되는 동안에 DI에 문제가 발생했는지 안했는지 알 수 있다. (Dagger는 컴파일 타임에 알 수 있다.) 자, 이제 Koin을 사용해보자. - Dependency 추.. 2020. 10. 24.
반응형