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相关联的数据在组件内、组 件间、页面间、应用内以及跨设备传递。

相关推荐
autumn20051 小时前
Flutter 框架跨平台鸿蒙开发 - 虚拟纪念馆
flutter·华为·harmonyos
2301_822703202 小时前
渐变壁纸生成:基于鸿蒙Flutter的跨平台壁纸创建工具
flutter·华为·harmonyos·鸿蒙
人间打气筒(Ada)2 小时前
「码动四季·开源同行」HarmonyOS应用开发:常见组件
华为·开源·harmonyos·组件·布局·鸿蒙开发
三声三视3 小时前
ArkTS 自定义组件完全指南:@Builder、@Extend、@Styles 实战解析
华为·harmonyos
Utopia^5 小时前
Flutter 框架跨平台鸿蒙开发 - 旅行预算管家
flutter·华为·harmonyos
李李李勃谦5 小时前
Flutter 框架跨平台鸿蒙开发 - 星空识别助手
flutter·华为·harmonyos
李李李勃谦5 小时前
Flutter 框架跨平台鸿蒙开发 - 本地生活服务预约
flutter·华为·生活·harmonyos
我的世界洛天依5 小时前
胡桃讲编程:早期华为手机(比如畅享等)可以升级鸿蒙吗?
华为·harmonyos
2301_822703205 小时前
开源鸿蒙跨平台Flutter开发:幼儿疫苗全生命周期追踪系统:基于 Flutter 的免疫接种档案与状态机设计
算法·flutter·华为·开源·harmonyos·鸿蒙
2301_822703206 小时前
鸿蒙flutter三方库实战——教育与学习平台:Flutter Markdown
学习·算法·flutter·华为·harmonyos·鸿蒙