본문 바로가기

전체 글37

안드로이드 MVVM 패턴 예시 안녕하세요. 이번 포스팅에서는 소프트웨어 디자인 패턴 중 하나인 mvvm 패턴을 안드로이드 앱을 통해 알아보겠습니다. MVVM 패턴에서 M은 Model, V는 View, VM은 ViewModel을 의미합니다. 쉽게 말해 V는 UI, Model은 UI가 그려지는데 필요한 데이터 혹은 UI에 표시되어야 하는 데이터입니다. 이 model과 view의 사이에서 view model이 중간 다리 역할을 하여 view와 model을 분리시켜 주는 것입니다. view(ui) - view model - model(data) 위와 같은 형태가 될 수 있으며, view model은 view에서 버튼 클릭 등의 사용자의 동작을 받아 필요한 기능을 수행하고 view에 알려줄 데이터를 가공합니다. 예시를 통해 알아보겠습니다. 언.. 2023. 4. 1.
안드로이드 힐트(hilt) 의존성 주입 사용 안녕하세요. 이번 포스팅에서는 hilt를 사용한 dependency injection을 간단하게 구현해 보겠습니다. 언어: 코틀린 sdk vsersion - compile: 33 - min: 21 - target: 33 저는 아래의 포스팅에서 사용한 소스에 적용해 보겠습니다. https://it-of-fortune.tistory.com/23 안드로이드 데이터바인딩(dataBinding) 사용 안녕하세요. 이번 포스팅에서는 저번 포스팅에서 사용했던 프래그먼트와 뷰모델을 이용해 데이터바인딩을 구현해 보도록 하겠습니다. 아래 링크에서 이전에 구현한 내용을 참고해 주세요. 새 it-of-fortune.tistory.com 가장 먼저 자바 버전을 확인해야 합니다. 아래 내용을 확인해 주세요. build.gradl.. 2023. 3. 31.
안드로이드 리사이클러뷰(recyclerview) 사용(with DiffUtil) 안녕하세요. 이번 포스팅에서는 리사이클러뷰를 diffUtil과 함께 사용해 보겠습니다. 언어: 코틀린 sdk vsersion - compile: 33 - min: 21 - target: 33 먼저 프래그먼트를 하나 생성한 후, xml을 아래와 같이 수정합니다. 저는 RecyclerFragment라는 이름으로 생성하였습니다. fragment_recycler.xml 프래그먼트에서는 view binding을 사용하도록 수정합니다. 뷰바인딩에 관한 내용은 아래 링크를 참고해 주세요. https://it-of-fortune.tistory.com/21 안드로이드 ViewBinding(뷰바인딩) 구현 안녕하세요. 이번 포스팅에서는 안드로이드 프래그먼트에서의 뷰바인딩 구현을 진행해 보겠습니다. 언어: 코틀린 sdk v.. 2023. 3. 30.
안드로이드 네비게이션(navigation) 사용 안녕하세요. 이번 포스팅에서는 기본적인 안드로이드 네비게이션을 구현해 보겠습니다. dependency를 추가합니다. build.gradle(project) buildscript { ext { nav_version = '2.5.3' } dependencies { classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version" } } build.gradle(:app) plugins { ... id 'androidx.navigation.safeargs.kotlin' ... } dependencies { ... implementation "androidx.navigation:navigation-fragment-ktx:$nav_vers.. 2023. 3. 30.