Google은 UI 개발을 단순화하기 위해 Kotlin으로 작성된 선언적 UI 엔진인 Jetpack Compose 베타를 출시했습니다.
또 왔습니다. 나는 Google의 새로운 UI 엔진인 Jetpack Compose가 출시될 당시에 대해 글을 썼습니다. 알파, 그리고 JetBrains가 다시 데스크탑 플랫폼으로 이식. 오늘 Jetpack Compose의 베타 릴리스가 출시되었습니다.
당신이 존재하는 모든 새로운 UI 기술을 따라잡지 못하고(당신을 비난하지는 않습니다) 원하지 않는 경우 다른 기사를 읽으려면(이제 나는 당신을 비난합니다) 이것이 무엇인지에 대한 간단한 설명이 있습니다. Jetpack Compose는 Android의 XML 레이아웃과 같은 기존의 명령형 UI 엔진을 대체(또는 적어도 실행 가능한 대안)하는 것을 목표로 하는 Kotlin으로 작성된 선언적 UI 엔진입니다. 선언적 레이아웃과 명령형 레이아웃의 차이점을 다루지는 않겠습니다. 따라서 Jetpack Compose는 UI 구현을 훨씬 쉽게 만들어 주는 강력한 코드 전용 레이아웃 엔진이라고 가정하겠습니다.
그렇다면 Compose의 베타 릴리스는 정확히 무엇을 의미합니까? 어디 한번 보자.
API
모든 좋은 프레임워크에는 정의에 따라 API가 필요합니다. 알파 이전 단계와 알파 단계에서 Google은 Compose의 API를 최대한 직관적이고 유용하게 구축하기 위해 열심히 노력했습니다. 그리고 모든 좋은 프로젝트가 그렇듯이, 이 프로젝트도 많은 수정을 거쳤습니다. API가 별도의 경고 없이 제거되거나 이름이 변경될 수 있으므로 이러한 단계에서 Compose를 사용하는 것은 어려울 수 있습니다.
이제 베타 단계에 있으므로 Google은 API가 완전하고 안정적이라고 확신합니다. 즉, 더 이상 (과격한) 제거나 변경이 필요하지 않으므로 API 변경 사항을 따라가는 것보다 실제로 앱을 만드는 데 더 많은 시간을 할애할 수 있습니다.
물론 안정적인 API가 불변성을 의미하는 것은 아닙니다. Google은 계속해서 기능을 추가하고 내용을 변경할 예정이지만 이제 적절한 지원 중단 알림과 교체 주기가 제공됩니다.
코루틴 지원
Google을 기억해 보세요. AsyncTask를 더 이상 사용하지 않습니다. Android에서는 모두가 걱정하고 잊어 버렸습니까? 이에 대해 Kotlin의 코루틴 프레임워크에 감사를 표할 수 있을 것입니다. 가장 기본적인 형태로 AsyncTask를 대체하지만 훨씬 더 강력하고 유연하며 크로스 플랫폼이기도 합니다.
Jetpack Compose는 일종의 코루틴 사용을 지원했으며 대부분 상호 운용성 계층으로 사용되었습니다. 하지만 베타에서는 코루틴이 Compose에 내장되어 있으므로 비동기 호출을 다시 적절하게 사용할 수 있습니다.
애니메이션
애니메이션은 Android에서 빌드하기가 다소 성가실 수 있으며 한동안 Compose에도 있었습니다. 그러나 베타 버전에서 Google은 작업을 더 쉽게 만들기 위해 "사용하기 쉬운" 애니메이션 API를 약속합니다. 또한 이러한 애니메이션 미리보기 지원을 포함하도록 Android Studio를 업데이트했으므로 테스트하기 위해 앱을 배포할 필요가 없습니다.
레이아웃
Android Studio에는 레이아웃을 처리하기 위한 매우 깔끔한 도구가 있습니다. 하나는 레이아웃 미리보기로, 기기에서 레이아웃이 어떻게 보일지 대략적으로 확인할 수 있습니다. 다른 하나는 레이아웃 검사기입니다. 이를 통해 앱이 실행될 때 앱의 레이아웃에 무슨 일이 일어나고 있는지 정확하게 확인할 수 있습니다. 장치.
이전에는 레이아웃 미리보기가 Compose 레이아웃과 함께 작동했지만 미리보기를 업데이트하려면 항목을 변경할 때마다 앱을 다시 빌드해야 했습니다. 이제 베타 버전이므로 Android Studio가 Compose 코드의 실시간 미리보기를 포함하도록 업데이트되었습니다.
또한 이전에는 레이아웃 검사기가 기본적으로 Compose 레이아웃에서 작동하지 않았습니다. 앱의 스크린샷을 표시하지만 실제로 모든 레이아웃 구성 요소의 와이어프레임을 추출하여 표시할 수는 없었습니다. 레이아웃 미리보기와 마찬가지로 Android Studio는 Compose 레이아웃을 지원하는 새로운 레이아웃 검사기로 업데이트되었습니다.
토크백
이제 불행하게도 일반적으로 잊혀지는 매우 중요한 기능인 접근성에 대해 이야기해 보겠습니다. 운 좋게도 Google은 더 빨리 출시될 수도 있었지만 이를 잊지 않았습니다. 이제 Compose 레이아웃은 다음을 지원합니다. 토크백는 사용자에게 콘텐츠를 읽어 주고 간단한 동작을 사용하여 디스플레이와 상호 작용할 수 있게 해주는 Android의 고급 화면 판독기입니다.
현재로서는 이것이 유일한 주요 접근성 기능이지만 Google은 안정적으로 다른 접근성 기능을 추가할 것이라고 약속했습니다. 내 생각에는 결코 늦지 않는 것이 더 낫다고 생각하며 이러한 기능이 XML보다 Compose와 더 긴밀하게 통합되기를 바랍니다.
그리고 그것은 거의 모든 것입니다.
Jetpack Compose를 시작하고 싶다면 지금이 아주 좋은 시기입니다. 가지고 놀고 배울 수 있는 완전한 기능을 갖춘 API와 Google에서 직접 제공하는 수많은 튜토리얼이 있습니다. 확인해 보세요 Google 개발자 웹사이트 업데이트 및 Compose 사용 방법에 대한 자세한 내용을 알아보세요.
물론, 베타 변경사항에 대한 의견이나 Compose에 대한 일반적인 의견도 알려주세요.