이번에는 Android jetpack 에 대해 알아보려고합니다. 이미지로 검색해보니 보통 저런 사진들만 나오네요..ㅎㅎ 추진력을 연상하게하려는 의도였을까요? (이건 개인생각) 바로 정의부터 시작해서 jetpack 에 대해서 살펴보겠습니다. 1. A...

[안드로이드] Android jetpack 소개

 


이번에는 Android jetpack 에 대해 알아보려고합니다.

이미지로 검색해보니 보통 저런 사진들만 나오네요..ㅎㅎ

추진력을 연상하게하려는 의도였을까요? (이건 개인생각)

바로 정의부터 시작해서 jetpack 에 대해서 살펴보겠습니다.







1. Android jetpack 소개

안드로이드 공식문서에서 아래와 같이 명시되어있습니다.

"개발자가 관심 있는 코드에 집중할 수 있도록 (1) 권장사항 준수, (2) 상용구 코드 제거

모든 Android 버전과 기기에서 (3) 일관되게 작동하는 코드 작성을 돕는 라이브러리 모음"

정의에서 본것과같이 jetpack 을 사용해야하는 이유를 바로 확인할 수 있습니다.

 



19.08.09 공식블로그 기준 Play 스토어 상위 1000 개 앱 중 80%가 Jetpack을 사용하고 있습니다.

많은 개발자들이 사용하고 있는만큼 꼭 정리하고 넘어가야한다는 생각이 드네요.




2. Android jetpack 특징

Android Jetpack 구성 요소는 기존 지원 라이브러리와 아키텍처 구성 요소를 통합하여 다음 4가지 카테고리로 정렬합니다.


 

Android Jetpack 라이브러리는 모두 [androidx.* 네임 스페이스] 로 구성되어있습니다.

또한 Android Jetpack은 Kotlin 통합과 같은 생산성 기능뿐만 아니라 

우려 사항 분리 및 테스트 가능성과 같은 현대적인 디자인 관행을 기반으로 구축되었습니다.

이를 통해 적은 코드로 강력한 고품질 앱을 쉽게 빌드 할 수 있습니다.







3. Android jetpack 라이브러리

현재 jetpack 라이브러리 모음중에서 인기순으로 정리하였습니다.
그리고 개인적으로 꼭 확인하고 넘어갈 내용은 강조처리 합니다.

 ▶ activity : 활동을 기반으로 빌드된 컴포저블 API에 액세스합니다.

 ▶ appcompat : 이전 API 버전의 플랫폼에서 새 API에 액세스할 수 있습니다(대부분 머티리얼 디자인 사용).

 ▶ camera : 모바일 카메라 앱을 빌드합니다.

 ▶ compose : 모양과 데이터 종속 항목을 설명하는 구성 가능 함수를 사용하여 프로그래밍 방식으로 UI를 정의합니다.

 ▶ databinding : 레이아웃의 UI 구성요소를 선언적 형식을 사용하여 앱의 데이터 소스에 결합합니다.

 ▶ fragment : 활동 내에서 호스팅되는 여러 개의 독립적인 화면으로 앱을 분할합니다.

 ▶ hilt : Dagger Hilt의 기능을 확장하여 androidx 라이브러리에서 특정 클래스의 종속 항목 삽입을 사용 설정합니다.

 ▶ lifecycle : 활동 또는 프래그먼트의 현재 수명 주기 상태에 따라 동작을 조정할 수 있는 수 명 주기 인식 구성요소를 빌드합니다.

 ▶ navigation : 인앱 UI를 빌드 및 구조화하고 딥 링크를 처리하며 화면 간에 이동합니다.

 ▶ paging : 페이지에 데이터를 로드하여 RecyclerView에 표시합니다.

 ▶ room : SQLite 데이터베이스에서 지원하는 영구 데이터를 생성, 저장 및 관리합니다.

 ▶ work : 지연 가능한 제약 조건 기반의 백그라운드 작업을 예약하고 실행합니다.




0 comments: