更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 应用开发 > HarmonyOS鸿蒙开发自学的方法(总共四条学习路线)

HarmonyOS鸿蒙开发自学的方法(总共四条学习路线)

更新时间:2022-03-20 09:42:35浏览次数:57+次

以下介绍HarmonyOS鸿蒙开发自学的方法,总共四条学习路线,它们分别是:HarmonyOS应用开发系列课程(开发者联盟-学院)、学会使用HarmonyOSAPI文档、学会从指南案例中举一反三、要掌握必要的理论基础。以下一一讲解。

一、HarmonyOS应用开发系列课程

如果说鸿蒙是一本书,那么“HarmonyOS应用开发系列课程”就是书中的序言部分,不仅道出鸿蒙的前世今生,更道出鸿蒙现在以及未来所承担的使命。这一部分教程主要为开发者阐述鸿蒙宏观的设计理念以及实现机制,让开发者了解鸿蒙自身所拥有的能力。这部分知识无论对于新手还是其他系统开发者来说,都十分重要,因为这是开发者了解和学习鸿蒙的大门。

视频学习路径:https://developer.huawei.com/consumer/cn/training/

相关参考:有没有关于鸿蒙HarmonyOS的书籍?特别是应用开发方面的

二、学会使用HarmonyOSAPI文档

文档是学习一项技术的第一手知识来源,能最直接介绍某一技术所提供能力。文档不同于其他博客类文章,文档内容没有掺杂任何个人主观看法,也不会有因个人或场景等其他因素对文档中某一技术理解所产生的局限。所以学会使用文档,不仅会大大降低自己对外界知识的依赖,也会学习到技术的“原生”特性,对未来的学习也起着至关重要的作用。

下面就来介绍如何使用HarmonyOS的Api文档。文档地址为:

https://developer.harmonyos.com/cn/docs/documentation/doc-references/overview-0000001054518434

在HarmonyOS的Api文档中,各个功能都被封装在不同的包中,每个包都是一类功能的集合。而每个包中都由Overview、Interface、Class、Enum、Exception中的一个或几个目录组成。如下图:

\

在上面的图片中,左侧为菜单,中间部分为某一菜单链接内容详情,右侧为页面的快速导航。

Overview菜单:是一个包的功能概述,同时也简要列出当前包中所定义的接口或者类列表。

Interface菜单:此菜单列出当前包中所定义的接口列表,在HarmonyOS的Api文档中,接口列表中的接口在设计上分为两类:一类是实现关系的高层抽象接口,这类接口派生出众多子接口或者实现类;另一类接口是关联关系的内部类接口,主要定义在其他类中作为内部类成员使用,这类接口常见的有回调接口、监听器等。

Class菜单:此菜单中列出当前包中所定义的类列表,每个类都有特定的功能,同时也定义了众多方法,在实际开发中可根据自己的预期来进行查找使用。

Enum菜单:Enum菜单列举了包中所有能够用到的枚举,在详情页面可以看到枚举的具体信息。

Exception菜单:此菜单定义功能的异常列表,需要在编码中进行捕获或者显示抛出。

在文档的实际使用中,建议每一位开发者从整体上对文档的功能分布有一个整体了解,每一个包下面的Overview部分都应该大致浏览一遍,虽然不会立刻用到,但在未来开发中用到时候可以快速定位知识所在目录,并深入学习使用。

就目前HarmonyOSApi文档的现状来说,缺少一个类或接口之间明确的关系体系介绍,这一点就需要开发者自行逐层查找,自己去明确这些接口或类之间的关系,如继承体系,明确继承体系有以下几种好处:

1.在实际开发中可以使用适当的接口来满足当前业务需要,做到功能接口最小化使用

2.选择适当的抽象可以增加应用程序在微观代码结构的稳定性,在未来业务迭代过程中可以更加灵活,如快速修改,代码功能复用等。

3.明确继承体系能更好的对一个功能体系有一个相对完整的抽象认知。

下面就以鸿蒙JavaUI框架Component举例:

\

在上面的左侧类菜单中,第一眼很难看出这些类之间的关系,需要开发者每一个都点开,然后在内容详情中看当前类的直接父类。然后再看继承体系下面的类介绍,可以看出,Component类是所有UI-component的基类,然后集序向下拉,可可以看到当前类的成员变量列表,方法列表,以及方法介绍等等信息。找到根父类之后,可以再继续查看其他类,查看其他类目的在于了解类的作用和定义,还有与其他类之间的关系。

下面再看当前菜单下的其他类,如ComponentContainer:

\

在上图中可以看出ComponentContainer实现了Component,这也意味着当前类继承了父类可被继承的方法,在拥有本身独特功能外,同时又拥有父类的共能。就这样以此类推,开发者可以对当前包下的类之间关系有一个大致认知。如下图:

\

就这样,开发者可以明确知道在特定场景可以使用特定组件,同时也可以利用不同抽象层级的类或接口解决开发中遇到的问题。其他包中的类体系也可以用同样的方法来进行梳理,只不过会费一点点时间。

三、学会从指南案例中举一反三

当简要了解HarmonyOSAPI文档如何使用之后,就可以进行实际的开发工作,但有一点,即使了解API文档中的各个包类中的功能,但也不一定就会使用。如果没有开发经验,这就需要在官方案例文档中去了解使用方式,当然官方案例一般都是比较简洁、通用,主要目的是为开发者进行一个有效的引导,剩下不明白的地方就需要自己在Api文档中进行查找,下面是官方案例文档:https://developer.harmonyos.com/cn/docs/documentation/doc-guides/document-outline-0000001064589184

官方开发指南覆盖了基本开发知识,并对常用开发知识做了概括介绍,包括相关概念、技术分布、简要的案例。这一部分知识对开发者来说非常重要,当然,也需要开发者从中吸取要点,做到举一反三。

四、要掌握必要的理论基础

鸿蒙是一套非常先进的系统,当然为了更多开发者快速上手,鸿蒙的高度封装功能接口大大降低了开发者的使用成本。这对于当今快速开发迭代非常有益。但开发者仍然需要掌握扎实的理论基础,才能在开发中更好的了解鸿蒙接口内部的运作机制。这不仅可以学习到鸿蒙接口的设计优秀之处,还可以应用到自己的实际开发工作中,并灵活运用开发出更好的代码。

下面是个人认为在开发过程中需要掌握的理论体系:

1.软件工程:软件工程是一套完整的理论体系,用于软件声明周期的各个阶段,掌握软件工程就意味着自己有一个完整的理论做开发支撑,这个很重要。

2.设计模式:设计模式是软件工程分支之一,是在代码结构微观领域的思想设计,当然也是面向对象编程的工具。

3.操作系统:无论是在鸿蒙开发、还是在其他领域开发,操作系统的知识在实际开发中处处都可以看到,如任务调度解决方案、锁的解决方案、分布式系统解决方案等等

当然,其他技术知识掌握的越多越好,但不建议学习工具的使用,更在于掌握通用的思想。因为计算机硬件、计算机软件设计思想一脉相承。