详解 HarmonyOS NEXT 系统中 ArkTS 和仓颉的混合开发
连续分享了很多天鸿蒙仓颉语言的开发教程,大家现在应该都知道鸿蒙开发有 ArkTs 和仓颉两种开发语言,这两种语言有些相似,而且还支持混合开发,今天就分享一下怎么实现 ArkTs 和仓颉的混合开发,分不清这两种语言的友友今天可能要头疼了。
官方文档对这两种语言的混合开发进行了非常大篇幅非常详细的介绍,但是幽蓝君自己学习完之后感觉不用那么麻烦,因为编译器能帮我们做绝大多数的工作。
首先打开 DevEco Studio 新建项目,此处选择 CangJie Hybrid 即可创建混合开发项目:

看一下创建后的结构目录:

可以看到项目中分别有 cangjie 的目录和 ArkTs 的项目目录,大家仔细看一下可以发现项目的入口文件是在 ArkTS 目录中的,就是说虽然创建项目选择的是仓颉混编项目,其实是仓颉代码依附在 ArkTs 的项目上,所以在混合开发项目运行过程中的页面控制器和主线程大都和仓颉无关,除后端功能以外,仓颉负责的部分主要是开发组件。
说的更简单一点,在混编项目中,ArkTS 的页面可以嵌入仓颉的部分 UI,而仓颉则不可以创建单独的页面。所以在混编项目中页面的生命周期和路由跳转也都和仓颉无关。
下面分享下详细的开发过程。
新创建的项目为我们演示了 ArkTs 如何调用仓颉中的方法,幽蓝再介绍下 ArkTs 如何引用仓颉的组件。
首先在 cangjie 文件夹右键创建空白仓颉页面,创建完成后在 cangjie 文件夹下新增了.cj 文件,不光如此,在 Arkts 目录中新增了名字相同的.ets 文件:

这是编译器自动帮我们完成了封装工作,现在我们想要跳转仓颉页面只需要跳转同名的 ArkTs 页面就行了。

看一下这个自动创建的页面的代码,就是创建了一个 ArkTS 页面并引入封装好的仓颉开发的组件。
所以混合开发我们要做的工作就是在仓颉文件中写仓颉,在 ArkTS 文件中写 ArkTS,其他所有的工作编译器都替我们做了,鸿蒙对开发者实在是太太太友好了。
最后有一些感慨,幽蓝君从业十年,熟识多种开发语言,有的面向对象,有的面向过程,有的注重性能。鸿蒙的 ArkTs 和仓颉是唯二的为开发者考虑的开发语言,让常见在软件背后默默敲代码的老程序员觉得无比感动。
今天就到这吧,感谢大家阅读。##HarmonyOS 语言 ##仓颉 ##购物 #
评论