2月5-7日QCon全球软件开发大会携手100+位大咖讲师落定北京,点击查看完整日程>> 了解详情
写点什么

华为发布 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:254190
用户头像
罗燕珊 InfoQ中文站编辑

发布了 340 篇内容, 共 159.6 次阅读, 收获喜欢 653 次。

关注

评论 3 条评论

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

为什么互联网大厂一边疯狂裁员,一边不停招聘?

Jackpop

Kubernetes网络模型

CTO技术共享

开源 Kubernetes 集群 签约计划第三季 8月月更

SRv6网络典型部署场景

穿过生命散发芬芳

8月月更 SRv6

Kubernetes故障排查eBPF

CTO技术共享

开源 ebpf 签约计划第三季 8月月更

钝感力与自我和解

Amazing_eve

#开源

如何克服紧张

踏雪痕

Linux的难题,终于有解了!

Jackpop

C++为什么始终无法取代 C 吗?

Jackpop

架构实战营课程学习感受

极客土豆

Kubernetes构建Redis 集群

CTO技术共享

redis 开源 签约计划第三季 8月月更

Go-Excelize API源码阅读(一)——NewFile()

Regan Yue

Go 开源 源码刨析 8月月更

Docker基础:Docker 常用命令梳理

天使不哭

#开源 8月月更

Service Mesh迁移原则

阿泽🧸

Service Mesh 8月月更

文本词频统计的利器 Trie树

Five

c 算法题 8月月更

Kubernetes 实现灰度和蓝绿发布

CTO技术共享

开源 灰度发布 蓝绿发布 签约计划第三季 8月月更

C++深拷贝与浅拷贝,初始化列表,对象成员,静态成员相关分析

CtrlX

8月月更

百家号打击挂载恶意导流链接行为,必须严厉打击恶意挂链灰产

石头IT视角

C++ 中的四种智能指针

桑榆

c++ 8月月更

VS Code如何打造C/C++开发环境?

Jackpop

gulp 的常用 API

Jason199

js gulp 8月月更

头脑风暴:零钱兑换

HelloWorld杰少

8月月更

Kubernetes信息安全

CTO技术共享

开源 信息安全 Kubernetes 集群 签约计划第三季 8月月更

SRE运维解密-服务质量目标:SLI,SLO,SLA

董哥的黑板报

微服务 运维 云原生 SRE Google

系统管理-Linux重定向与管道

Albert Edison

Linux centos 运维 服务器 8月月更

开源一夏 | jQuery 密码验证和深入理解JSONP【前端jQuery框架】

黎燃

开源 8月月更

电动汽车充电站的部署优化策略

乌龟哥哥

8月月更

Nacos配置中心之服务端长轮询处理机制

周杰伦本人

8月月更

关于 SAP UI5 floating footer 显示与否的单步调试以及使用 SAP UI5 的收益

Jerry Wang

前端开发 SAP SAP UI5 ui5 8月月更

Kubernetes 调度器优化

CTO技术共享

开源 Kubernetes 集群 签约计划第三季

Python 教程之输入输出(5)—— input() 函数中的漏洞 – Python 2.x

海拥(haiyong.site)

Python 8月月更

一起学习集合框架之 TreeSet

宇宙之一粟

Java 8月月更

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