데스크톱 및 웹용 JetBrains Compose가 이제 알파 버전입니다

click fraud protection

JetBrains는 Google의 Android용 Jetpack Compose의 포트인 데스크톱 및 웹용 Compose를 알파 버전으로 출시했습니다. 새로운 내용은 다음과 같습니다.

들어본 적이 없다면 Jetpack Compose, 최근에 어디 있었나요? Google은 Android의 표준 XML 레이아웃 엔진을 대체하기 위해 이 선언적 UI 프레임워크를 만들었습니다. Compose를 사용하면 개발자가 Kotlin에서 레이아웃과 관련 로직을 모두 만들 수 있습니다. Kotlin을 개발한 회사인 JetBrains도 Compose 작업에 참여하여 이를 데스크톱과 웹 모두에 포팅하는 작업을 진행하고 있습니다.

데스크톱 및 웹용 JetBrains Compose는 한동안 개발 중이었습니다. 개발자가 Compose에서 크로스 플랫폼 앱을 만드는 데 사용할 수 있는 공개 사전 알파 '기술 미리보기'가 있습니다. 개인적으로 사용해본 결과 내 삼성 펌웨어 다운로더 앱, 꽤 잘 작동합니다.

현재 JetBrains는 Compose 버전을 알파 버전으로 홍보하고 있습니다. 이는 몇 가지 새로운 기능 및 변경 사항과 함께 보다 안정적인 API를 의미합니다.

웹용으로 작성

먼저 웹입니다. 웹용 작성은 짝수입니다. 데스크톱용 Compose보다 최신 버전, 그리고 꽤 많이 빠졌습니다. 그렇다고 그것이 쓸모없다는 뜻은 아니다. 개발자는 데스크톱 및 Android에서 사용할 수 있는 멋진 핵심 UI 요소를 얻지 못할 수도 있지만 선언적 디자인 원칙을 통해 Kotlin으로 작성하는 이점은 여전히 ​​누릴 수 있습니다.

이제 Compose가 알파 단계에 있으므로 Web API는 시간이 지남에 따라 변경되는 주요 변경 사항이 거의 없어 더욱 안정적입니다.

작성 창 관리

데스크톱으로 돌아가서 개발자가 앱에서 창과 상호 작용하는 방식에 몇 가지 변경 사항이 있습니다.

첫 번째는 새로운 구성 가능한 창 API. 이를 통해 개발자는 선언적으로 앱의 창과 상호 작용할 수 있습니다. 예를 들어, 이제 상태에 따라 창 제목을 변경할 수 있으며 상태에 따라 창을 열고 닫을 수도 있습니다.

새 창 API의 또 다른 부분을 사용하면 개발자는 고정된 크기 대신 적응형 크기로 새 창을 열도록 선택할 수 있습니다. 즉, Compose는 콘텐츠를 기반으로 창의 크기를 계산하고 초기 크기를 자동으로 설정한 다음 창을 엽니다.

플러그인

JetBrains Compose에는 컴파일과 실행을 수행하기 위한 Gradle 플러그인이 항상 있었습니다. 알파 버전에서는 이 플러그인의 버전이 향상되고 일부 버그 수정이 이루어졌습니다.

Gradle 플러그인 외에도 다음이 있습니다. 이제 IDE 플러그인 IntelliJ IDEA 및 Android Studio가 데스크톱 및 웹용 Compose를 더 효과적으로 지원합니다. Android용 Compose와 마찬가지로 이 플러그인을 사용하면 개발자가 구성 가능한 함수에 미리보기로 주석을 달고 IDE에서 직접 레이아웃 미리보기를 볼 수 있습니다.

플러그인은 현재 매우 기본적입니다. 현재 제공되는 유일한 다른 기능은 구성 가능한 함수 이름에 제목 대소문자 사용에 대한 IDE 린트 경고를 제거하는 것입니다. 하지만 시간이 지남에 따라 실시간 미리보기 등 더 많은 기능이 추가될 예정입니다.

아키텍처 지원

JetBrains Compose의 목표는 크로스 플랫폼이지만 아직 모든 CPU 아키텍처를 완벽하게 지원하지는 않습니다. 알파에서는 현재 지원을 다음으로 확장합니다.

  • 맥OS: x86-64(amd64), arm64
  • 윈도우: x86-64(amd64)
  • 리눅스: x86-64(amd64), arm64
  • 웹: 최근의 모든 것

이것이 확실히 모든 것을 포괄하는 것은 아니지만 지원은 앞으로 더 좋아질 것입니다.

향후 개발

Compose를 알파 상태로 전환하려는 JetBrains의 선택은 중요합니다. 이는 그들이 최종 베타 및 안정 단계를 통해 계속해서 개발할 계획이라는 것을 의미합니다. 물론 더 많은 기능도 있습니다.

결론

Compose가 어떤 기능을 제공하는지 보는 것은 매우 흥미로운 일입니다. Android에서는 오래된(완벽하게 사용 가능하긴 하지만) 레이아웃 엔진을 대체합니다. 데스크톱 및 웹에서는 TypeScript 기반 언어보다 (적어도 나에게는) 사용하기 쉬운 강력한 형식의 언어를 사용하여 선언적 디자인을 제공합니다. 특히 데스크톱에서 Compose는 기능적 레이아웃 엔진의 상당히 큰 격차를 메우는 데 도움이 됩니다.

JetBrains Compose를 직접 사용해 보고 싶다면, GitHub 저장소를 확인해 보세요 시작하는 방법에 대한 자세한 내용을 알아보세요.