본문 바로가기

Android/MVVM

(7)
Data Binding with LiveData. LiveData를 사용한 데이터 바인딩은 코드를 더 간결하게 만듭니다. 레이아웃이 ViewModel과 직접 통신 할 수 있습니다. 따라서 값을 업데이트 할 수있는 모든 방법을 추적 할 필요가 없습니다.. 이것은 매우 간단한 앱입니다. 데이터 바인딩, ViewModel 및 LiveData의 작동 방식을 보여주기 위해 가능한 가장 간단한 프로젝트 예제를 만들었습니다. build.gradle 앱 수준 gradle 파일에서 데이터 바인딩을 활성화했습니다. 또한 ViewModel 및 LiveData에 대한 필수 종속성을 추가했습니다. plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-kapt' } android { compileSdkVer..
Two Way Data Binding vs One Way Data Binding 단방향 데이터 바인딩을 사용하여 사용자에게 일부 데이터 (앱 대 사용자 데이터 흐름)를 표시 할 수 있습니다. 또한 단방향 데이터 바인딩을 사용하여 사용자 입력 (사용자 대 앱 데이터 흐름)을 얻을 수도 있습니다. 그러나 때로는 동일한 위젯을 통해 데이터를 표시하고 사용자 입력을 받고 싶을 때도 있습니다. 즉, 양방향 데이터 흐름이 필요한 경우 양방향 데이터 바인딩을 사용해야합니다. 간단한 양방향 데이터 바인딩 프로젝트 예제 새 Android Studio 프로젝트를 생성하여 시작하겠습니다. TwoWayDataBinding 데모로 이름을 지정합니다. 1 단계 먼저 앱 수준 build.gradle 파일에서 데이터 바인딩을 활성화해야합니다. 이 코드 부분을 android 블록 안에 작성하십시오. buildFe..
Live Data Android LiveData는 수명주기를 인식하고 관찰 가능한 데이터 홀더 클래스입니다. 이름에서 알 수 있듯이 라이브 데이터를 가져 오는 데 사용합니다. 즉, 데이터 소스에서 실시간 업데이트를 가져옵니다. LiveData 라이브러리는 배우고 사용하기가 매우 쉽습니다. 당신은 그것을 즐길 것입니다. LiveData는 어디에서 생성 / 생성합니까? 우리는 일반적으로 ViewModel 클래스 내에서 LiveData를 정의합니다. 또한 Room 및 Retrofit과 같은 지원 라이브러리를 통해 LiveData 형식으로 데이터를 직접 가져올 수 있습니다. 어디에서 LiveData를 관찰합니까? LiveData는 수명주기를 인식하는 관찰 가능한 데이터 홀더 클래스입니다. 그러나 Android에는 수명주기가있는 ..
안드로이드 뷰모델 ViewModel은 단순히 뷰 (액티비티 및 프래그먼트)에 대한 모델 클래스입니다. 데이터 트랜잭션을위한 메서드를 제공하므로 활성화 및 조각이 호출하여 작업을 완료 할 수 있습니다. 구성 변경이 발생하면 활동과 조각이 파괴되고 다시 생성됩니다. 따라서 지역적으로 보유한 가치는 손실 될 수 있습니다. Activities and fragments destroy and recreate when configuration changes happen . So values they hold locally, can be lost. 그러나 ViewModels는 그런 식으로 파괴하지 않습니다. 따라서 그들은 활성 및 조각에 속하는 값을 보유 할 수 있습니다. ViewModel의 onCleared ()는 시스템의 메모리를 ..
안드로이드 데이터 바인딩 Android 데이터 바인딩 라이브러리를 사용하면 xml 레이아웃 파일에 대한 바인딩 클래스를 생성 할 수 있습니다. 이러한 바인딩 클래스를 사용하여 findViewById ()를 호출하지 않고도 뷰 컴포넌트를 효율적으로 사용할 수 있습니다. 또한 레이아웃 변수와 레이아웃 표현식을 사용하여 레이아웃에 값을 설정하고 레이아웃에서 값을 자동으로 가져올 수 있습니다. 데이터 바인딩이 필요한 이유 Android 개발에서는 findViewById () 함수를 사용하여 뷰에 대한 참조를 얻습니다. 그러나 그렇게 할 때마다 Android 시스템은 뷰 계층 구조를 거쳐 런타임에 찾아야합니다. 또한 더 큰 Android 애플리케이션에는 많은 레이아웃과 수백 개의 뷰가있을 수 있습니다. 따라서 시스템은 뷰 계층 구조를 몇..
02. MVVM 적용 샘플 #01 1. App 수준 gradle에 implementation dataBinding{ enabled=true } //Retrofit and GSON implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0' //Kotlin Coroutines implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.2" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.2" // ViewModel and LiveData implementation..
#01. MVVM MVVM Model View View Model 안드로이드 어플리케이션을 개발할 때 유지보수 가능하고 이해 가능하며 테스트가 가능한 코드를 작성하기 위해 디자인 패턴을 사용합니다. 적절한 지침, 디자인 패턴, 모범 사례를 따라 코드를 작성하면 누구나 이해하기 쉽습니다. 코드를 이해할 수 있다면 모든 개발자가 작업을 시작하기 쉽고 프로젝트를 장기적으로 유지할 수 있습니다. 구글은 몇가지 일반적인 아키텍처 원칙을 제안합니다. 1. Separation of Concerns - 모든 코드를 활동이나 조각으로 작성하는 것이 일반적입니다. 액티비티나 프래그먼트에는 UI를 담당하는 로직이 포함되어야합니다. UI 클래스를 네트워크 호출과 독립되게 만들어야합니다. 이렇게 하면 수명주기 관련 충돌을 피할 수 있습니다. 2..

반응형