最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

跨平台开发框架 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:218999
用户头像
罗燕珊 InfoQ中文站编辑

发布了 424 篇内容, 共 245.3 次阅读, 收获喜欢 757 次。

关注

评论

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

网络空间测绘系统的商业应用

郑州埃文科技

网络空间测绘技术

ChatGPT与传统搜索引擎的区别:智能对话与关键词匹配的差异

天津汇柏科技有限公司

搜索引擎; ChatGPT

京东商品列表数据接口

tbapi

京东 京东API接口 京东商品列表数据接口

AI能代替软件工程师吗?

小魏写代码

2024年体育赛事直播平台现状分析:平台开发促进竞争与发展

软件开发-梦幻运营部

IO模型介绍(select、poll、epoll)

京东科技开发者

"线程池中线程异常后:销毁还是复用?"

京东科技开发者

百度智能云千帆,产业创新新引擎

百度Geek说

AI 百度智能云 千帆大模型平台

大型IM工程重构实践:企业微信Android端的重构之路

JackJiang

即时通讯;IM;网络编程

ERC314协议的背后,可能存在权限作恶的风险

加密先生

抢开盘、抢土狗、批量抢买、卖出机器人工具使用说明

区块链技术

【论文速读】| 越狱:大语言模型安全训练是如何失败的?

云起无垠

大模型时代下的“金融业生物识别安全挑战”机遇

中关村科金

安全 金融 防伪 生物识别

Python数据库编程全指南SQLite和MySQL实践

华为云开发者联盟

Python MySQL 开发 华为云 华为云开发者联盟

XPath攻略:从入门到精通,告别查找困难!

测试人

软件测试

发掘非结构化数据价值:AI 在文档理解领域的现状与未来

Baihai IDP

程序员 AI 非结构化数据 白海科技

青否交互数字人源码导入定制知识库大模型!

青否数字人

数字人

MappedByteBuffer VS FileChannel:从内核层面对比两者的性能差异

bin的技术小屋

jdk Linux Kenel FileChannel mmap内存映射

展示大屏-24小时天气预报

叫练

火山引擎发布ByteHouse性能白皮书,揭秘OLAP性能突破的关键技术

字节跳动数据平台

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

独立站如何做好移动端的优化处理呢?

技术冰糖葫芦

API 接口

solana链土狗抢单机器人

区块链技术

2024南京国际自动驾驶技术展览会

AIOTE智博会

自动驾驶展 智能驾驶展

java线程池原理浅析

京东科技开发者

探索华为云CCE敏捷版金融级高可用方案实践案例

华为云开发者联盟

开发 华为云 容器集群 华为云开发者联盟 华为云CCE

助力水下潜行:浮力调节系统仿真

DevOps和数字孪生

火山引擎VeDI:A/B测试开放平台正式上线,企业个性化平台一键定制

字节跳动数据平台

大数据 A/B测试 企业号 3 月 PK 榜 对比试验 数字化增长

【京东云新品发布月刊】2024年3月产品动态

京东科技开发者

咸鱼翻身啦!咸鱼之王完美内购版架设教程

echeverra

咸鱼之王

避免封禁困扰:数字人直播防封策略大揭秘!

青否数字人

数字人

XPath攻略:从入门到精通,元素查找不再难

霍格沃兹测试开发学社

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