写点什么

华为发布 HarmonyOS 3.1 开发者预览版,并推出鸿蒙开发语言 ArkTS

  • 2022-11-04
    北京
  • 本文字数:1421 字

    阅读完需:约 5 分钟

华为发布HarmonyOS 3.1开发者预览版,并推出鸿蒙开发语言ArkTS

11 月 4 日,在华为开发者大会 2022(Together)上,华为终端 BG 软件部总裁龚体宣布,华为发布 HarmonyOS 3.1 开发者预览版本,SDK 全面升级 ArkTS 声明式应用开发,即日起就可在官网获取。2023 年 1 月将发布 HarmonyOS 3.1 Beta 版本,2023 年 3 月发布 HarmonyOS 3.1 Release 版本。



届时,开发者 Beta 版本将支持 1 万+ ArkTS APIs,拥有声明式 UI、应用开发框架、分布式系统服务、多媒体、WEB、通信等多种能力,可支持 ArkTS 商用应用开发。



同时华为 HarmonyOS 从 3.0 版本就兼容 OpenHarmony API 能力,本次发布的 3.1 版本兼容 OpenHarmony 的 API 9。未来 HarmonyOS 将继续基于 OpenHarmony 演进,华为也将持续投入 OpenHarmony 开源项目共建。


为了解决开发者关注的问题,华为提出鸿蒙生态应用开发三大理念:一次开发,多端部署;可分可合,自由流转;统一生态,原生智能。关于鸿蒙生态应用开发三大理念的详细介绍,感兴趣的读者可以去 HarmonyOS 官网下载《鸿蒙生态应用开发白皮书》了解。


而围绕声明式开发体系,华为基于此发布了全新升级的鸿蒙开发套件,包括设计系统 HarmonyOS Design、开发语言 ArkTS、开发框架 ArkUI、编译器 ArkCompiler、开发工具 DevEco Studio、测试工具 DevEco Testing 以及上架分发平台 AppGallery Connect,从设计、开发、测试、上架全流程进行了全面优化。


据介绍,HarmonyOS 基于 JS/TS 语言体系,构建了全新的声明式开发语言 ArkTS。ArkTS 是华为自研的开发语言。它在 TypeScript(简称 TS)的基础上,匹配 ArkUI 框架,扩展了声明式 UI 语法和轻量化并发机制,让跨端界面开发和并行化任务开发更高效简洁,使应用开发效率提升 30%。


龚体称,为了更好的解决 JS/TS 语言开发体系性能上短板,华为在开发框架 ArkUI 和编译器 ArkCompiler 上做了技术性突破。


编译器 ArkCompiler,针对传统的动态类型语言因为变量不确定及编译解析优化都在启动运行阶段导致应用启动慢的问题,突破了动态语言可以带类型编译,支持对象持久化和重绑定技术,实现了业界首个动态类型语言 AOT 编译模式,可显著缩短应用启动运行时间。高负载复杂应用在 ArkCompiler 的加持下,在低配置机型的启动速度相比传统模式提升 30%。同时,ArkCompiler 还提供了多种源码保护技术,大幅提升 JS/TS 类型源码安全度。



开发框架 ArkUI 对后端渲染机制进行全新升级,使用了最新的 Diff 算法,无需再根据 COMPONENT 树和 ELEMENT 树比较差别来刷新界面内容,而是直接基于 RENDER 树里面的节点来比较,不再需要三棵树,实现了渲染算法树三合一(NODE 树)。这种新的渲染机制极大简化了声明式开发框架的树形结构,大幅度优化了界面布局渲染性能,使应用界面滑动加载速度提升了 45%。


同时,ArkUI 上还构建了全新的开发模型“Stage”模型,Stage 是一个规范化进程管理开发模型,它通过构建十多种后台进程拉起规范,使得应用在开发阶段就根据进程规范拉起,避免了后台进程无序侵占系统资源。从而保障了进程环境从“无序”到“有序”,优化了应用体验。此外,Stage 模型还实现了逻辑和 UI 分离,进一步简化了流转开发步骤,大幅提升跨端流转开发效率。



开发工具方面,HUAWEI DevEco Studio 升级到 3.1 版本。HarmonyOS 测试工具和上架分发服务也全面配套 ArkTS 应用进行了升级。DevEco Testing 为 ArkTS 跨端应用提供专项测试,AppGallery Connect 实现 ArkTS 跨端应用一键上架分发。


华为表示,鸿蒙开发套件升级,是 HarmonyOS 确定以声明式开发体系为方向,标志着鸿蒙生态将迎来全新发展阶段。未来 HarmonyOS 将持续基于声明式开发体系和三大理念不断演进,全面加速推进鸿蒙生态。

2022-11-04 19:2512565
用户头像
罗燕珊 AI practitioner | Tech media

发布了 585 篇内容, 共 455.5 次阅读, 收获喜欢 873 次。

关注

评论 3 条评论

发布
用户头像
给仓颉露个相呗
2022-11-05 17:03 · 上海
回复
用户头像
希望是真开放,不是假开放
2022-11-05 07:45 · 浙江
回复
用户头像
这个语言要先放出来啊,如果只能在鸿蒙上用就小众了,不会想去学的。
2022-11-04 20:09 · 湖南
回复
没有更多了
发现更多内容

拯救开源:《网络韧性法案》即将带来的悲剧

开源雨林

开源 LICENSE

小米交卷大模型,全新小爱同学实测来了

Openlab_cosmoplat

小米 大模型 小爱同学

MySQL的Json类型字段IN查询分组和优化方法

北桥苏

MySQL SQL优化 虚拟字段

科技前沿的助力:探索语音标注平台的奇迹

数据堂

SRE方法论之服务质量目标

不思jo

SRE

人机协作的交融:语音标注平台的秘密

数据堂

解决跨时区跨语言的国外大文件传输问题

镭速

跨国传输大文件 传输大文件 国外大文件传输

揭秘!CIPU最新秘密武器–弹性RDMA的技术解析与实践

阿里云弹性计算

OpenCloudOS WOW 活动上线啦!千份社区好礼等你来拿!

OpenCloudOS

操作系统

LLM 落地电商行业的最佳实践来了?Zilliz X AWS 有话说

Zilliz

AWS Zilliz 向量数据库 电商行业 大模型落地

mutex vs atomic

Geek_44385e

Atomic mutex 互斥锁

2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是

福大大架构师每日一题

福大大架构师每日一题

技术分享| WebRTC之SDP详解

anyRTC开发者

WebRTC RTC sdp

借助 AI 工具,真的能成为 10x 工程师?

飞算JavaAI开发助手

软件测试/测试开发丨Python 模块与包 学习笔记

测试人

Python 程序员 软件测试 自动化测试 测试开发

K8s 常见面试题

互联网工科生

Kubernetes k8s

Serverless 应用托管助力企业加速创新

阿里巴巴云原生

阿里云 Serverless 云原生

备份或同步数据?跨国大文件传输的不同需求与解决方案

镭速

大文件传输 跨国文件传输

低代码系列——初步认识低代码

互联网工科生

软件开发 低代码 JNPF

腾讯云 CODING 荣获 TiD 质量竞争力大会 2023 软件研发优秀案例

CODING DevOps

慧函数生成代码应用到IDEA遇到依赖包问题怎么办?

飞算JavaAI开发助手

星火大模型 VS FuncGPT(慧函数), 谁更胜一筹?

飞算JavaAI开发助手

语音技术的催化剂:语音标注平台的崛起

数据堂

智能多通道系统实现消息推送更智能更高效

MobTech袤博科技

前端 前端开发 消息推送 APP开发

校源行丨开放原子开源基金会赴苏州大学走访交流

开放原子开源基金会

开源

软件测试/测试开发丨Python 错误与异常 学习笔记

测试人

Python 程序员 软件测试 自动化测试 测试开发

华为发布HarmonyOS 3.1开发者预览版,并推出鸿蒙开发语言ArkTS_语言 & 开发_罗燕珊_InfoQ精选文章