안드로이드

[안드로이드] Jetpack

이손안나 2022. 9. 30. 19:10

Jetpack

  • 구글이 발표한 라이브러리와 도구 모음집으로 쉽고 빠르고 퀄리티 좋은 앱을 만들 수 있도록 도와주는 라이브러리 도구
  • 기존에 존재하던 support library에는 여러가지 문제접이 있었고 이를 개선하면서 jetpack이 다시 나옴.
  • AndroidX 를 사용할 것을 권장 (jetpack의 라이브러리를 묶은 패키지 명)

💡 ACC ?

- jetpack에서 architecture에 해당하는 부분으로 테스트와 유지보수가 쉬운 안드로이드 앱을 디자인할 수 있도록 돕는 라이브러리 모음

- ACC를 사용하면 구글에서 권장하는 MVVM구조로 앱 설계가 가능.

 

  • databinding
    • 레이아웃의 ui 구성요소를 선언적 형식을 사용하여 앱의 데이터 소스를 결합
  • lifecycle
    • 활동 또는 프래그먼트의 현재 수명 주기 상태에 따라 동작을 조정할 수 있는 수명주기 인식 구성요소 빌드
  • room
    • sqlite 데이터베이스에서 지원하는 영구 데이터를 생성, 저장 및 관리
  • navigation
    • 인앱 ui를 빌드 및 구조화하고 딥 링크를 처리하며 하면 간에 이동
  • paging
    • 페이지에 데이터를 로드하여 recyclerview에 표시

 

💡 MVVM ?

  • model
    • datamodel이라고도 하며, 다양한 데이터 소스로부터 필요한 데이터 준비
    • viewmodel에서 데이터를 가져갈 수 있게 데이터를 준비하고 이벤트를 보냄
  • view
    • viewmodel을 관찰하고 있다가 상태변화가 전달되면 화면을 갱신
  • viewmodel
    • view에 뿌리기 쉬운 model로 바꾸는 역할