Android
-
View Binding: What is it?Android 2023. 2. 14. 14:32
View Binding은 왜 등장했을까? 오늘은 2019년 Google I/O에서 소개된 View Binding에 대해 알아보겠습니다. 현재까지 안드로이드에서 뷰에 접근할 수 있는 다양한 방법이 제공되었습니다. 위의 표에서 안드로이드 팀은 해당 방법들을 다음과 같은 세세 가지의 기준을 정해 비교했습니다. Elegance : 코드를 깔끔하게 작성할 수 있는지 Compile Time Safety : 컴파일 시간에 안전한지 Build Speed Impact : 빌드 속도가 빠른지 findViewById의 문제점 val textView = findViewById(R.id.txtView) 뷰의 개수대로 코드를 추가해줘야 합니다. (100개면 100줄을??) Null safety하지 못합니다. 잘못된 뷰 id로 인..
-
AAC의 ViewModel 사용 방법 정리Android 2023. 2. 14. 14:28
소개 구글에서는 안드로이드 개발을 하는데 ViewModel과 Repository 사용을 추천하고 있습니다. 이는 공식 문서 Guide to app architecture에 나와있는데요. 이번 포스팅은 여기서 사용되는 ViewModel이 왜 나왔으며 어떻게 앱에서 초기화 하여 사용하는지 정리해보고자 합니다. Activiy와 Fragment는 복잡한 라이프 사이클을 가지고 있습니다. 많은 개발자들은 이 라이프 사이클에 맞춰 작업하는데 많은 고통을 겪고 있었고 이에 구글에서는 안드로이드 개발을 좀더 손쉽게 도와주는 라이브러리의 모음인 Jetpack을 2018년에 발표했습니다. Android Architecture Component 와 Android Jetpack Google IO 2017에서 새로운 라이브러리..
-
Dagger2 with AndroidAndroid 2023. 2. 14. 14:20
소개 이전에 Hilt에 대해서 소개해드렸는데 힐트 내부의 동작 방식이 어떻게 이루어지는지 잘 모르실 수도 있을 것 같아서 Dagger2가 어떻게 작동하고 어떤 방식으로 DI를 수행하는지 정리해 보았습니다.\ build.gradle //dagger2 implementation 'com.google.dagger:dagger:2.25' kapt 'com.google.dagger:dagger-compiler:2.25' implementation 'com.google.dagger:dagger-android:2.25' implementation 'com.google.dagger:dagger-android-support:2.25' kapt 'com.google.dagger:dagger-android-processor..
-
RecyclerViewAndroid 2023. 2. 14. 14:18
개요 RecyclerView 위젯은 ListView가 더 진보하고 유연해진 버전입니다. RecyclerView 모델에서는 여러 다양한 구성요소가 함께 작동하여 데이터를 표시합니다. 사용자 인터페이스의 전체 컨테이너는 레이아웃에 추가하는 RecyclerView 객체입니다. RecyclerView는 개발자가 제공한 레이아웃 관리자에서 제공한 뷰로 채워집니다. 표준 레이아웃 관리자(예: LinearLayoutManager 또는 GridLayoutManager) 중의 하나를 사용하거나 직접 구현할 수 있습니다. 목록의 뷰는 뷰 홀더 객체로 표현됩니다. 이러한 객체는 RecyclerView.ViewHolder를 확장하여 정의한 클래스의 인스턴스입니다. 각 뷰 홀더는 뷰를 사용하여 단일 항목을 표시하는 역할을 합니..