젯팩(Jetpack)
-
안드로이드는 모든 버전과 기기에서 일관되게 동작하는 젯팩(Jetpack) 라이브러리를 제공합니다.
-
안드로이드 개발자들은 수많은 파편화로 인해 각각의 버전 및 기기별로 여러 버전의 코드를 작성해 왔습니다.
-
이런 문제들을 해결하기 위해 젯팩이 개발되었고, 개발자들은 필요한 로직에만 집중할 수 있게 되었습니다.
젯팩 사용 이유
-
하위 버전 호환성최신 설계 방식을 바탕으로 빌드된 젯팩 라이브러리는 이전 버전과의 호환성 기능이 통합되어 비정상 종료와 메모리 누수를 줄일 수 있게 해줍니다.
-
반복되는 코드 제거젯팩은 개발자가 비즈니스 로직을 작성하는 데 집중할 수 있도록 백그라운드 작업, 수명 주기 관리 등 반복적이고 지루한 코드를 제거해줍니다.
-
낮은 복잡도모든 버전 및 기기에서 일관된 동작으로 코드의 복잡도를 낮춰줍니다.
젯팩 라이브러리
-
젯팩은 약 90개 정도의 라이브러리를 제공합니다.
-
다음은 입문 단계에서 꼭 필요한 라이브러리라고 볼 수 있습니다.CollectionConstraintLayoutFragmentRecyclerViewViewPager2PreferenceRoom
뷰 바인딩(ViewBinding)
-
안드로이드에서 뷰 객체에 접근하기 위해서는 findViewById()를 사용하였습니다.
-
안드로이드는 findViewById를 떨쳐내고(deprecate) 뷰 바인딩을 지원합니다.
코루틴
-
백그라운드 처리를 위해 사용되던 스레드(Thread)를 경량화한 코루틴(Coroutine)이 제공됩니다.
-
동시성 프로그래밍이 가능한 코루틴은 다른 언어에서 이미 사용되고 있는 개념이며, 이를 Kotlin에 도입한 것입니다.
-
기존의 스레드는 코루틴을 위해 실행 가능한 공간을 제공하는 역할만 하며, 하나의 스레드에 여러 개의 코루틴이 존재할 수 있도록 설계되었습니다.
- 비동기적으로 실행되는 코드를 간소화하기 위해 Android에서 사용할 수 있는 동시 실행 설계 패턴입니다.
느낀 점
fragment..collectiono.. 등등 다 jetpack 의 라이브러리였구나..
코루틴은 백그라운드 처리를 위해 사용되는 스레드를 경량화 한 것 이었군. . .
'르탄즈 5기' 카테고리의 다른 글
[르탄즈 5기] 사전캠프 1주차 강의 - BMI계산기(마무리) (0) | 2024.01.18 |
---|---|
[르탄즈 5기] 데일리미션 - 앱 개발자 JD 분석 (0) | 2024.01.18 |
[르탄즈 5기] 1주차 미션 - 자기소개 시간 (0) | 2024.01.18 |
[르탄즈 5기] 데일리 미션 - 앱 개발 용어 정리 2 (0) | 2024.01.17 |
[르탄즈 5기] DAY 2 - TIL (0) | 2024.01.16 |