1 JETPACK이란?
구글에 Jatpack을 검색해보면 나오는 이미지는 아래와 같은데,
개발자에게 부스터를 달아주는 라이브러리라는 것을 한 눈에 알 수 있다 !
(1) Android Jetpack
안드로이드 개발자 문서는 Jetpack을 개발자가 중요한 코드에 집중할 수 있도록 권장사항 준수, 상용구 코드 감소, 여러 Android 버전과 기기에서 일관되게 작동한느 코드 작성을 돕는 라이브러리 묶음이라고 소개하고 있다.
Android Jecpack을 사용해야 하는 이유
1. 권장 사항 준수 : 이전 버전과의 호환성 기능잉 통합되어 비정상 종료와 메모리 누수를 줄여줌
2. 상용구 코드 제거 : 개발자가 뛰어난 앱을 만드는 데에만 집중할 수 있도록 백그라운드 활동을 관리해줌
3. 파편화 줄이기 : 모든 Android 버전 및 기기에서 일관되게 작동하는 라이브러리를 사용해 복잡성을 줄임
Android Jetpack 개발자 리소스 - Android 개발자 | Android Developers
Follow best practices, eliminate boilerplate code, and reduce fragmentation
developer.android.com
2 JETPACK의 새로운 구성요소
(1) WorkMananager
- 지속적인 작업에 권장되는 솔루션
- 제약 조건 기반 백그라운드 작업을 위한 원스톱 솔루션을 제공하는 라이브러리
- 지속적인 작업의 우형 : 작시, 장기 실행(10분 이상), 지연가능(나중/주기적 실행)
(2) Navigation
- 기존 액티비티는 데이터 공유 및 전환에 관한 경직성으로 인해 내비게이션 구성에 이상적인 아키텍처가 아님
- 단일 활동 앱을 기본 아키텍처로 만드는데 중점을 두고 인앱 UI를 구성하기 위한 프레임워크 제공
- Lifecycle 및 ViewModel과 같은 아키텍처 구성 요소의 이점을 누리는 동시에
Navigation에서 FragmentTransactions의 복잡성을 처리할 수 있음
(3) Paging
- RecyclerView에서 대용량 데이터 세트를 쉽게 로드하고 표시할 수 있음
- 로컬 저장소, 네트워크 또는 둘 다에서 페이징된 데이터를 로드 가능
- Room, LiveData, RxJava와 함께 활용
(4) Slices
- Google 검색 앱 내 및 Google 어시스턴트와 같은 다른 요소에 앱의 서식 있는 동적 양방향 콘텐츠를 표시할 수 있는 UI 템플릿
- 잘 와닿지 않아서 더 찾아봐야할 듯!
Slice 템플릿 | Android 개발자 | Android Developers
Slice 템플릿 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 문서에서는 Android Jetpack의 템플릿 빌더를 사용하여 Slice를 구성하는 방법을 자세히 설명합니
developer.android.com
Slice | Android 개발자 | Android Developers
Slice 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Slice는 Google 검색 앱 내 및 Google 어시스턴트와 같은 다른 요소에 앱의 서식 있는 동적 양방향 콘텐츠를
developer.android.com
(5) Android KTX(Kotlin Extensions)
- Kotlin 언어 기능을 활용하여 생산성 향상
- Android KTX를 활용해 간결한 코틀린 코드로 변환
Android KTX | Android 개발자 | Android Developers
컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android KTX는 Android Jetpack과 기타 Android 라이브러리에 포함된 Kotlin 확장 프로그램 세트입니다. KTX 확장 프로그
developer.android.com