1. 前言
鸿蒙是一款由华为推出的全生态操作系统(探索 | 华为开发者联盟),最近几年发展势头非常强劲,现在开始,让我们来一起认识他吧。
本文针对鸿蒙基本的开发内容做一次概览性的串联。
咱们学习一款新的开发平台,一般先关注两个事情:a)开发工具;b)开发语言。
2. 开发工具与开发语言
2.1 开发工具
鸿蒙的开发工具叫 DevEco Studio,它是基于idea做的定制开发,使用习惯完全继承idea。DevEco开发环境依赖Node.js和Ohpm,如果我们使用的电脑没有配置对应的环境也没关系,我们下载安装DevEco后,首次使用DevEco Studio,工具的配置向导会引导我们下载SDK及工具链。
具体的环境配置方法看这里:配置开发环境-快速开始-DevEco Studio使用指南-工具
工具下载地址见这里:https://developer.huawei.com/consumer/cn/deveco-studio
2.2 开发语言
鸿蒙开发语言支持 C/C++、ArkTs、js、Java(从API Version 8开始,不再提供Java语言SDK包)
其中ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展,继承了TS的所有特性,是TS的超集。(因此在学习ArkTS语言之前,建议开发者具备TS语言开发能力)
3. 基本概念
3.1 UI框架
鸿蒙提供了一套UI开发框架 —— 方舟开发框架(ArkUI)。方舟开发框架可为开发者提供应用UI开发所必需的能力,比如多种组件、布局计算、动画能力、UI交互、绘制等。
ArkUI针对不同目的和技术背景的开发者提供了两种开发范式,分别是基于ArkTS的声明式开发范式(简称“声明式开发范式”)和兼容JS的类Web开发范式(简称“类Web开发范式”)
-
声明式开发范式:采用基于TypeScript声明式UI语法扩展而来的ArkTS语言,从组件、动画和状态管理三个维度提供UI绘制能力。
-
类Web开发范式:采用经典的HML、CSS、JavaScript三段式开发方式,即使用HML标签文件搭建布局、使用CSS文件描述样式、使用JavaScript文件处理逻辑。该范式更符合于Web前端开发者的使用习惯,便于快速将已有的Web应用改造成方舟开发框架应用。
在开发一款新应用时,推荐采用声明式开发范式来构建UI,主要基于以下几点考虑:
-
开发效率:声明式开发范式更接近自然语义的编程方式,开发者可以直观地描述UI,无需关心如何实现UI绘制和渲染,开发高效简洁。
-
应用性能:虽然两种开发范式的UI后端引擎和语言运行时是共用的,但是相比类Web开发范式,声明式开发范式无需JS框架进行页面DOM管理,渲染更新链路更为精简,占用内存更少,应用性能更佳。
-
发展趋势:声明式开发范式后续会作为主推的开发范式持续演进,为开发者提供更丰富、更强大的能力。
以下是两种开发范式的简单对比:
开发范式名称 | 语言生态 | UI更新方式 | 适用场景 | 适用人群 |
声明式开发范式 |