Harmony OS 应用开发 - ArkTS

一、ArkTS 简介

ArkTS 是 HarmonyOS 优选的主力应用开发语言,ArkTS 围绕应用开发在Typescript 的生态基础上做了进一步扩展,保持了TS 的基本风格,同时通过规范定义强化开发期静态检查和分析,提升程序执行稳定性和性能。

  1. ArkTS 提供了声明式UI范式、状态管理等相应的能力,让开发者可以使用更简洁、更自然的方式开发应用
  • UI 描述: 提供了各种装饰器、自定义组件和UI描述机制,配合UI开发框架中的UI内置组件、事件方法、属性方法等共同构成了应用开发的主体
  • 状态管理: 状态管理语法实现UI相关联数据在组件内、组件间、页面件、应用内以及跨设备传递
  1. 同时,它在保持 Typescript 基本风格的基础上,进一步通过规范强化静态检查和分析,使得在程序运行之前的开发期能检测出更多的错误,提升代码的健壮性,并实现更好的运行性能
  • 强化静态类型检查: ArkTS 要求所有类型在程序实际运行之前都是已知的,减少运行时的类型检测,提升性能
// TS
// 这段代码在 ArkTS 会报错,编译器不知道变量 area 的类型
const area = {
	offset: 0,
	stride: 9,
	region: {
		size: {
			width: 1,
			height: 1,
		},
		x: 0,
		y: 0,
	}
}

// ArkTS
import { image } from '@kit.ImageKit'
const area: image.PositionArea = {
	offset: 0,
	stride: 9,
	region: {
		size: {
			width: 1,
			height: 1,
		},
		x: 0,
		y: 0,
	}
}
  • 限制在运行时改变对象布局: 为实现最大性能,ArkTS 要求在程序执行期间不能更改对象布局
// TS
class User {
	name: string = '';
	age: number = '';
}
let user = new User();
(user as any).department = 'XXX';
delete (user as any).department;


// ArkTS
class User {
	name: string = '';
	age: number = '';
	department?: string;
}
let user = new User();
user.department = 'XXX';
user.department = undefined; // 置空可选属性
  1. 针对JS/TS并发能力支持有限的问题,ArkTS 对并发编程API 和能力进行了增强
  2. ArkTs 支持与 TS/JS 高效交互操作,兼容TS/JS 生态

二、基础语法

类型

  1. 基础类型: string、number、boolean
  2. 引用类型: Array, 自定义类
  3. 枚举类型: Enum
  4. 联合类型: Union 允许变量的值为多个类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值