写点什么

跨平台开发框架 Compose Multiplatform 1.0 发布

  • 2021-12-03
  • 本文字数:1117 字

    阅读完需:约 4 分钟

跨平台开发框架Compose Multiplatform 1.0发布

JetBrains 工程师 Sebastian Aigner 在官方博客宣布,Compose Multiplatform(Kotlin 的声明式 UI 框架)已经发布了 1.0 版本,现在可以在生产环境中使用了。此版本主要解决质量和稳定性问题,同时修复关键问题和错误。


Compose Multiplatform 由 Compose for Desktop 和 Compose for Web 组成,通过 Kotlin Multiplatform 支持许多不同的平台。现在,用户可以在桌面上创建 Kotlin 应用程序,也可以使用 Compose for Web 的稳定 DOM API 构建生产质量的动态 Web 体验,并与 Web 上的所有浏览器 API 完全互通。


由于 Compose Multiplatform 是声明式的,代码反映了应用程序的 UI 结构,因此用户不必担心诸如从模型复制数据到视图或开发 UI 刷新逻辑之类的事情。在下面这个例子中,一旦 TextField 的内容被编辑,Text label 的内容将被更新,无需任何额外的代码:


var text by remember { mutableStateOf("Hello, World!") }Column {   Text(text) //text label   TextField(text, {text = it}) //text field}
复制代码


“刚开始使用 Compose Multiplatform 很容易,特别是如果您之前使用过像 React 或 Google Jetpack Compose 这样的声明式 UI 框架。 Compose Multiplatform 使用了许多相同的概念,因此您应该有宾至如归的感觉,”JetBrains 在博客文章中如此写道。


Compose Desktop 使用 Skia,这是一个经过良好优化的图形库,目前被许多对性能敏感的应用程序(包括现代浏览器)使用。这意味着 Compose Multiplatform 支持桌面上的所有主要的硬件加速引擎,例如 DirectX、Metal 和 OpenGL。


它还通过预览工具提供较短的迭代周期,允许用户微调其 UI 的组件/部分,并创建它们的多次迭代,而无需重新构建或重新启动应用程序,从而缩短开发周期。


除了桌面,Compose Multiplatform 提供了一个强大的、声明性的 Kotlin/JS API 来处理 DOM——它具备你在现代 Web 框架中想要和需要的所有功能,包括全面的 DOM API、内置 CSS-in-JS 支持、对 SVG 的支持等。


“总的来说,现在在各种平台(包括 Android,以及使用上兼容 Jetpack Compose)之间共享专业知识和代码要比之前容易得多。”Sebastian Aigner 说道。其表示,在 JetBrains 内部早在今年年初就开始在 Jetbrains Toolbox App 中应用 Compose Multiplatform。这个 App 已经有超过 100 万月活用户,并在 4 个月前完全从 C++ 和 Electron 迁移到 Compose Multiplatform。


要尝试 Compose Multiplatform 快速开始构建面向多个平台的应用程序,可以使用 IntelliJ IDEA 2021.1+ 中的 Kotlin 项目向导。附 Compose Multiplatform 官方入门教程地址:https://github.com/JetBrains/compose-jb/tree/master/tutorials


延展阅读《为什么除了 Flutter 之外,我们还需要另一个跨平台开发框架?》

2021-12-03 18:2111087
用户头像
罗燕珊 AI practitioner | Tech media

发布了 547 篇内容, 共 419.0 次阅读, 收获喜欢 860 次。

关注

评论

发布
暂无评论
发现更多内容

低代码可视化逻辑编排工具

树上有只程序猿

低代码 可视化编排 JNPF

陈奕迅全新专辑《CHIN UP!》上线华为音乐,五年后心血之作强势来袭

最新动态

还得是PHP

谐云

桌面云一体机什么品牌最好?

青椒云云电脑

桌面云 一体机 桌面云一体机

影视企业有哪些方式将视频文件快速海外跨国传输国内?

镭速

跨国文件传输

Python JSON 使用指南:解析和转换数据

小万哥

Python 程序员 软件 后端 开发

以云原生应用构建现代化架构的企业业务系统

谐云

手机是数字世界的另一个你,你的隐私还安全吗?

最新动态

Serverless,无服务器时代的创新之旅开启了吗

谐云

企业如何开展数据管理体系建设,激活数据价值?

用友BIP

数据 数据价值

第23期 | GPTSecurity周报

云起无垠

第22期 | GPTSecurity周报

云起无垠

Java while 和do while 循环

HoneyMoose

Rust中non_exhaustive的enum

胡译胡说

rust

陌生链接可能是诈骗网址,谁来保护我们的上网安全?

最新动态

华为Mate 60必备,这几个保护隐私的设置太实用了

最新动态

Ping和ARP流程解析

王玉川

router Switch ping ICMP ARP

Gartner发布2024年十大战略技术趋势

谐云

火山引擎ByteHouse:如何用OLAP引擎提升数字营销效果?

字节跳动数据平台

数据库 大数据 云原生 数仓 企业号11月PK榜

数据库|PostGreSql 和 MySql 的优劣对比

谐云

跨国文件传输为什么要用专业的大文件传输软件?

镭速

跨国文件传输

一座 “数智桥梁”,华为助力“天堑变通途”

脑极体

AI

对话在行人|浙纺服职院:数智赋能教育高质量发展

用友BIP

2023全球商业创新大会 对话在行人

技术、前沿、未来、AI:Stack Overflow 2023 年度报告重磅发布

谐云

【PyTorch 卷积】实战自定义的图片归类

北桥苏

卷积神经网络 CNN PyTorch

客服发送一条消息背后的技术和思考

得物技术

体验 IM 客服

缺客户、缺钱、缺时间——实业经营的真挑战,中国企业分别突破

B Impact

单模光纤与多模光纤是什么呢?

小齐写代码

用友签约一级央企中国一重!

用友BIP

资产管理

跨平台开发框架Compose Multiplatform 1.0发布_大前端_罗燕珊_InfoQ精选文章