Compose Multiplatform 发布 Beta 版本

简介: Compose Multiplatform 发布 Beta 版本

近日,JetBrains 公司发布了 Compose Multiplatform 的 Beta 版本,这距离此前 Alpha 版本的发布才过去两个多月。

这个版本中包含了许多新的改进,在桌面端与Web端分别增加了新的 API ,并对已有的部分 APIs 进行了稳定。Beta 版的发布意味着距离 1.0 正式版更近了一步。

Jetpack Compose 是 Android 最新推出的声明式 UI 工具包。JetBrains 受到 Jetpack Compose 的启发,相继发布了 Compose Desktop 以及 Compose Web 项目,试图依托 Kotlin 语言跨平台的特性将声明式开发方式扩展到更多平台。

image.png

JetBrains 于今年8月将 Android,Desktop 以及 Web 等多个平台的 Compose 版本整合为 Compose Multiplatform 项目,未来开发者在 Kotlin Multiplatform 项目中可以使用同一套 Artifacts 开发 UI 。

Compose Multiplatform 项目推进速度很快,其正式版本最快可于今年内与大家见面。项目之所以快速推进是因为 Jetpack Compose 在设计之初就考虑了未来在更多平台中应用的场景。

image.png

翻看 Jetpack Compose 项目源码可以发现项目采用了 Kotlin Multiplatform 的工程结构,代码中充斥了 actual / expect 关键字,这是 Kotlin Multiplatform 的重要关键字,支持项目在多个平台的适配和落地。

image.png

Compose 的技术栈分层合理,各层都能够单独复用。处于底层的 compose-runtime 主要负责视图树的管理,这些逻辑与平台无关,任何平台都可以基于 runtime 构建自己的声明式 UI 框架;而 compose-ui-core 中负责的渲染部分基于 JetBrains 的跨平台 Skia 库实现(Skiko),此部分不依赖特定平台,也可以在 Desktop 甚至 iOS 侧使用;compose-ui-fundation 以及 compose-ui-material 中的很多布局或者基础组件在设计上也充分考虑了通用性,可以在 Desktop 等其他平台使用。可见,虽然 Jetpack Compose 作为 Android 的 Native UI 框架诞生,但是其骨子里已经具备了跨平台的潜力,Compose Multiplatform 的出现算得上是水到渠成。

JetBrains 之外的其他一些公司和组织也在进行着 Compose 跨平台方面的探索,前不久 Jack Wharton 就曾在其博客宣称他近期一直致力于将 Compose 运行在包括 iOS 在内的更多平台。

image.png

Compose 不追求 API 在各平台的绝对一致,不同平台可以结合自身特性打造独有的 DSL,但是它们在开发范式以及底层原理上保持统一。Compose 凭借先进的开发思想及良好的可移植性,有潜力成为未来包括桌面端在内的 UI 通用解决方案,也许一个 Native 版 React 即将来临。

官网:www.jetbrains.com/lp/compose-…

目录
相关文章
|
6月前
|
IDE JavaScript 开发工具
Compose Multiplatform 1.0 发布
Compose Multiplatform 1.0 发布
108 0
|
Java 测试技术 Apache
软件版本GA,RC,alpha,beta,Build 含义
软件版本GA,RC,alpha,beta,Build 含义
108 0
|
存储 API
R -安装组件_1.9.1-beta
R -安装组件_1.9.1-beta
663 0
|
传感器
裸眼 3D 效果 Compose 版本
裸眼 3D 效果 Compose 版本
176 0
裸眼 3D 效果 Compose 版本
|
Web App开发 存储 监控
【Release Notes】Kubernetes解决方案更新
2017年8月 支持Kubernetes 1.7.2, 相应变更请参见 CHANGELOG。 去部署Kubernetes CloudProvider切换使用ECS实例ID标识集群节点,支持用户自由更改控制台实例名称。
4075 0
|
测试技术 Windows
微软 MSE Build 1.0.1959.0 最新版发布
近日,微软放出Microsoft Security Essential的最新版本Build 1.0.1959.0,包括32位XP版本、32位和64位Windows7/Vista版本。去年9月底,微软发布了免费杀毒软件Microsoft Security Essential(MSE),随后开始了Beta测试项目MSE Ongoing Beta Program,并陆续向测试人员提供的MSE Build 1.0.1676.0、1.0.1743.0、1.0.1801.0、1.0.1901.0。
857 0
|
Web App开发 Ubuntu Linux
Ubuntu 11.04 beta 2发布!
Ubuntu Linux是一份完整的桌面Linux操作系统,它可免费获得,并带有社团及专业的支持。Ubuntu社团按照Ubuntu宣言里所铭记的思想而组建:软件应免费提供,软件工具应能以人们本地语种的形式可用且不牺牲任何功能,人们应拥有定制及改变他们软件的自由,这包括以任何他们认为适宜的方式。
1016 0