写点什么

跨平台开发框架 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:2111200
用户头像
罗燕珊 AI practitioner | Tech media

发布了 560 篇内容, 共 437.0 次阅读, 收获喜欢 864 次。

关注

评论

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

假如你从8月份开始准备Java面试,秋招如何成功上岸互联网大厂?Java面试题及答案分享!

程序员高级码农

Java 程序员

HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)事件推荐接入方案

最新动态

HarmonyOS NEXT跨应用跨设备数据共享实战:从拖拽到同步

最新动态

鸿蒙NEXT开发案例:二维码的生成与识别

最新动态

机器人精准夹取技术实现物品无损搬运

qife122

机器学习 机器人技术

HarmonyOS NEXT 应用元服务开发-分布式数据对象迁移数据权限与基础数据

最新动态

HarmonyOS NEXT 应用开发快速入门案例

最新动态

利用NFC增强用户体验:HarmonyOS NEXT的NFC应用指南

最新动态

HarmonyOS NEXT 端侧部署基础之 HiAI Foundation Kit

最新动态

鸿蒙 NEXT 安全控件与系统 Picker 深度剖析

最新动态

鸿蒙NEXT开发案例:经纬度距离计算

最新动态

跨平台数据整合:淘宝商品详情API在自媒体矩阵中的应用实践

tbapi

淘宝商品详情接口 淘宝API 天猫商品详情接口

鸿蒙NEXT开发案例:颜文字搜索器

最新动态

低代码 & 大模型:JeecgBoot 如何成为 AI 应用加速器

JEECG低代码

低代码 AI应用 AI 大模型

HarmonyOS NEXT在支付场景中的安全通信设计:基于NFC和Secure Element的数据加密

最新动态

鸿蒙NEXT权限申请全攻略:系统授权与用户授权之道

最新动态

HarmonyOS NEXT自定义数据类型的跨应用协作:实现企业级文档管理

最新动态

AGORA:通过群体蒸馏激发大语言模型的群体涌现能力

qife122

大语言模型 推理能力

京东商品详情API响应数据解析

tbapi

京东商品详情API 京东数据采集 京东数据分析 京东接口

从 ClickHouse、Druid、Kylin 到 Doris:网易云音乐 PB 级实时分析平台降本增效

SelectDB

数据库 kylin 数据分析 Doris 网易云音乐

华为鸿蒙 UIAbility 组件:构建用户界面的舞台

最新动态

鸿蒙NEXT开发案例:分贝仪

最新动态

华为鸿蒙 Want:应用组件之间信息传递的桥梁

最新动态

ArkTS 应用的代码混淆策略:提升安全性与性能

最新动态

车载Alexa语音助手的核心技术解析

qife122

语音识别 波束成形

HarmonyOS NEXT方舟数据管理与分布式数据库实战:构建高效同步架构

最新动态

HarmonyOS NEXT元服务开发快速入门案例

最新动态

HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)本地搜索接入方案

最新动态

JAVA高级开发工程师怎么找工作?JAVA工作经验4-5年一般会面试什么问题?

程序员高级码农

Java 程序员 Java 面试

鸿蒙NEXT应用国际化:数字与度量衡格式化

最新动态

IME Kit入门:HarmonyOS输入法开发概述与基础操作

最新动态

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