ArkTS简介

一、什么是ArkTS?

ArkTS是HarmonyOS生态的应用开发语言。

  • ArkTS提供了声明式UI范式状态管理支持等相应的能力,让开发者可以更简洁、更自然的方式开发应用。
  • ArkTS在保持TypeScript(简称TS)基本语法风格的基础上,进一步通过规范化静态检查和分析 ,🙆🏻‍使得在程序运行之前的开发期能检测更多错误,提升代码健壮性,并且实现更好的运行性能。
  • 针对JS/TS并发能力支持有限的问题,ArkTS对并发编程API和能力进行了增强。
  • ArkTS支持与JS/TS高效互操作,兼容TS/JS生态。

二、ArkTS 在 TypeScript基础上增强

  • 1.通过规范约束不合适的特性

ArkTS规范约束TS中过于灵活而影响开发正 确性或者给运行时带来不必要额外开销的特 性,由此可在静态分析阶段获取更确定和稳 定的信息,提升代码健壮性和性能。

  • 2.保留公共子集

保留好的特性,语义与标准TS一致。例如:严格模式、空值安全等。

  • 3.增加新特性

结合应用的开发体验和执行效率需 求,ArkTS增加更多功能。例如:并发增强、UI范式所依赖特性等

  • 4.约束特性示例

delete操作符 在运行时动态创建新属性

三、ArkTS相对TS的约束示例:

1、强化静态类型检查:ArkTS要求所有类型在程序实际运行前都是已知的,减少运行时的类型检测,提升性能。

less 复制代码
// Typescript 代码
const area = ( //在ArkTS中,此处会报错
pixels: new ArrayBuffer(8)^
offset: 0,
stride: 8,
region: { size: { height: 1, width::
}, x: y: 。 }
)

编译器不知道变量area的类型,也无法很好优化
import ( image } from '@kit.ImageKit';
const area: image.PositionArea = (
pixels: new ArrayBuffer(8),
offset: 0,
stride: 8,
region: ( size: { height: 1, width:2 },
x: 0, y: 。 }
}

四、ArkTS基于TypeScript的拓展

  • ArkTS的对UI的拓展

1.UI描述: UI描述语法提供了各种装饰器、自定义组件和UI 描述机制,再配合UI开发框架中的UI内置组件、 事件方法、属性方法等共同构成了应用开发的主 体。

2.状态管理 联态靠语法实现UI相关联的数据在组件内、组 件间、页面间、应用内以及跨设备传递。

相关推荐
SoraLuna2 小时前
「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现
macos·ui·harmonyos
ClkLog-开源埋点用户分析3 小时前
ClkLog企业版(CDP)预售开启,更有鸿蒙SDK前来助力
华为·开源·开源软件·harmonyos
mg6683 小时前
鸿蒙系统的优势 开发 环境搭建 开发小示例
华为·harmonyos
lqj_本人4 小时前
鸿蒙next选择 Flutter 开发跨平台应用的原因
flutter·华为·harmonyos
lqj_本人4 小时前
使用 Flutter 绘制一个棋盘
harmonyos
lqj_本人7 小时前
Flutter&鸿蒙next 状态管理框架对比分析
flutter·华为·harmonyos
青瓷看世界8 小时前
华为HarmonyOS打造开放、合规的广告生态 - 插屏广告
华为·harmonyos·广告投放
青瓷看世界8 小时前
华为HarmonyOS借助AR引擎帮助应用实现虚拟与现实交互的能力2-管理AR会话
华为·ar·harmonyos·虚拟现实
2301_795558649 小时前
鸿蒙的进化史
华为·harmonyos
Swift社区9 小时前
HarmonyOS App 购物助手工具的开发与设计
harmonyos·arkts·arkui