前言
对于有前端基础的同学而言,鸿蒙开发的学习其实并不难。目前主流的鸿蒙操作系统可以说有俩个版本一个是openHarmony,另一个就是HarmonyOS。鸿蒙的立项最早可追溯到2012年,知道204年才获批。在发布openHarmony后,华为将其捐给了开放原子开源基金会。基于openHarmony,华为推出了基于微内核的分布式操作系统——HarmonyOS,目前HarmonyOS的最新版本是4.2,而传言中的5.0(Next)版本还未公布。而鸿蒙之父王成录博士也从华为出来创办了深开鸿,尝试基于openHarmony的鸿蒙PC版的研发。
从JavaScript到TypeScript再到ArkTs,这种更迭通常是由于前面的语言有自己的缺陷,或者时代技术发展催生了新的需求,所以才会有新语言提出。鸿蒙开发的语言是基于华为自研方舟编译器编译的ArkTS,作为TS的超集,ArkTS在保留TS基础语法的基础上做了一些拓展。所以如果要学习鸿蒙开发,TS的学习便是必要的。
不同版本语法特性
TS作为基础,其语法理解是非常重要的一个环节。关于TS中各种语法规则,变量的定义,选择循环语句的使用,函数、类、接口的定义与调用是我们学习它的重点。
在学习过程中,我们可以通过习题项目提高对该编程语言的掌握,通过反复练习加深理解。当具备语法基本功之后,针对项目去建立自己的逻辑思路,如何用代码表达意图?如何用代码实现需求?这是我们需要考虑到的。
初步学习过程中,由于目前Next版本并没有发布,我们不可避免的需要先了解当前版本ArkTS的一些语言特性,并同接下来的纯血版做一个对比。
HarmonyOS 4.0&Next(不兼容安卓,弃用aosp)
附录:
- JS:弱类型语言,定义变量不需要声明类型(JS定义变量
va age=15 age='pink'
)- TS:添加了数据类型定义如:number,boolen,string…(TS定义变量
let age:number=15
)- ArkTs:TS基础语法+ArkUI(鸿蒙App元素:按钮,文本框 + 状态管理(渲染)
- ArkTs(Next):使用的TS语法有一些和4.0不同,4.0可以理解为就是TS
1.对象中的属性需要赋默认值(后面必须要给个值如id:number=0
)
class Person{
id:number=0
name:string=1
age:number=0
}
建议写代码要习惯注释(写代码毕竟不是写给自己看,在团队分工合作中我们通常需要互相调用,这个时候命名规范和注释就是很重要的。 通常公司也会有代码质量管理部门,他们的专职工作就是检测代码)
对于实际开发中不知道如何赋值的情况,先定义接口(这是一种规范),再定义类
interface UserInfo{
/**
*头像
*/
avatar:string
/**
*姓名
*/
name:string;
/**
*编号
*/
number:string;
/**
*手机号
*/
phone:string
}
接口作为类型直接用,如何调用?通常通过implements
继承 。构造函数则是为了传递变量。其实接口里面加了注释,类里面可加可不加。
class UserInfoModel implements UserInfo{
/**
* 头像
*/
avatar:string="";
/**
* 姓名
*/
name:string=