【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

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

发布了 426 篇内容, 共 248.9 次阅读, 收获喜欢 761 次。

关注

评论

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

如何修复 Mac 上的“未找到匹配的密钥交换方法”

背包客

macos SSH Mac 软件 mac电脑 macOS 13 Ventura

政务云建设提速,天翼云夯实智慧政务数字底座

天翼云开发者社区

云计算 大数据

开发一次、运行多端:Weex与小程序容器的卓越优势解析

FinFish

Weex 跨端开发 小程序容器 跨端框架 跨端技术

Java获取本机IP

代码的路

KW 新闻 | KaiwuDB 亮相数字中国并发布离散制造场景解决方案

KaiwuDB

数字中国 KaiwuDB 离散制造业解决方案

参与赢大奖!阿里云机器学习平台PAI助力开发者激发AIGC潜能

阿里云大数据AI技术

阿里云 AIGC

如何理解 REST 和 RPC 之间的差异?

Apifox

程序员 RPC Rest 协议 RPC调用

AIGC时代,设计软件应该做什么?丨AIGC X 企业服务

ToB行业头条

集结开发者力量,6月17日华为开发者联创日·深圳站即将启航!

说山水

源生创新 云享未来|GOTC全球开源技术峰会华为云云原生精彩时刻

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

在币圈不想被割韭菜?学习怎么当一个成功的项目方

加密先生

低代码赛道拥挤 生态聚合成为破局关键

力软低代码开发平台

面试官:如何实现开关降级

互联网架构师小马

Java sentinel aop 开关降级

破防了!阿里用17个真实企业级项目阐述Java系统分析与架构设计

互联网架构师小马

Java 架构设计 系统分析

【有奖调研】互联网新型社交,华为在找“元服务搭子”,快来集合!

HMS Core

HMS Core

低代码崛起:让程序员饭碗不保?人工智能或成“帮凶”

加入高科技仿生人

人工智能 低代码 数智化

瓴羊Quick BI:轻松实现数据可视化大屏

对不起该用户已成仙‖

Sentinel熔断降级的规则及实现原理

互联网架构师小马

Java sentinel 熔断降级

一文走进 SQL 编译-语义解析

KaiwuDB

KaiwuDB SQL编译

人民日报:天翼云持续拓展云网基础设施覆盖广度和深度

天翼云开发者社区

云计算

十年磨一剑,超级人工智能如果出现,人类将如何应对挑战?

这我可不懂

人工智能 AI AGI

QCon高分演讲:火山引擎容器技术在边缘计算场景下的应用实践与探索

火山引擎边缘云

边缘计算 容器技术 实践 火山引擎边缘云

正式启动|2023中国高校计算机大赛—大数据挑战赛火热报名中!

云智慧AIOps社区

大数据 AI 算法 运维 智能运维

当GaussDB遇上了毕昇编译器

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

什么是低代码(Low-Code)?

优秀

低代码 低代码Low-Code 低代码是什么

微服务高并发:授权与系统自适应功能的实现原理

互联网架构师小马

授权 系统自适应

程序员晋升指南!13年顶级架构设计经验的锦囊妙计与实践分享

互联网架构师小马

Java 架构

执行器-Query 执行详解

KaiwuDB

KaiwuDB Query执行

TCMalloc 技术细节详解

KaiwuDB

KaiwuDB TCMalloc

CloudOps自动化运维套件助力企业更好上云、用云、管云

阿里云弹性计算

云计算 大数据 阿里云 物联网

在百度生态用达人营销赋能品牌生意增长 | 度星选白皮书

说山水

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