资料地址1:https://pan.baidu.com/s/17hAwHqDmCK_TuJf9Z0ImvQ 提取码: 4faw
资料地址2:https://share.weiyun.com/ejGBbrlH 密码:dmgcbe
华为鸿蒙HarmonyOS系统是面向万物互联的全场景分布式操作系统,目前鸿蒙系统已从2.0升级更新至Beta 3.0,支持手机、平板、智能穿戴、智慧屏等多种终端设备运行,提供应用开发、设备开发的一站式服务。
凭借多终端开发IDE,多语言统一编译,分布式架构Kit提供屏幕布局控件以及交互的自动适配,支持控件拖拽,面向预览的可视化编程,使开发者可以基于同一工程高效构建多端自动运行App,实现真正的一次开发,多端部署,在跨设备之间实现共享生态。
作为万物互联时代的操作系统,“分布式技术”铸就了鸿蒙的核心竞争力,在5G这个万物互联的时代有着巨大的优势
一、HarmonyOS有三⼤特征:
搭载该操作系统的设备在系统层⾯融为⼀体、形成超级终端,让设备的硬件能⼒可以弹性 扩展,实现设备之间 硬件互助,资源共享。 对消费者⽽⾔,HarmonyOS能够将⽣活场景中的各类终端进⾏能⼒整合,实现不同终端 设备之间的快速连接、能⼒互助、资源共享,匹配合适的设备、提供流畅的全场景体验。
⾯向开发者,实现⼀次开发,多端部署。 对应⽤开发者⽽⾔,HarmonyOS采⽤了多种分布式技术,使应⽤开发与不同终端设备的 形态差异⽆关,从⽽让开发者能够聚焦上层业务逻辑,更加便捷、⾼效地开发应⽤。
⼀套操作系统可以满⾜不同能⼒的设备需求,实现统⼀OS,弹性部署。 对设备开发者⽽⾔,HarmonyOS采⽤了组件化的设计⽅案,可根据设备的资源能⼒和业 务特征灵活裁剪,满⾜不同形态终端设备对操作系统的要求。
二、应用结构
鸿蒙应用以程序包的形式进行发布,一般包括一个或多个HAP以及描述HAP属性的pack.info组成
(1)HAP是由代码、资源、第三方库及应用配置文件组成的模块包,可分为entry和feature两种模块模型。
(2)entry是应用的主模块,对于某个应用程序App,可以包含一个或多个entry类型的HAP,但是主要是为了兼容设备,例如兼容不同屏幕分辨率的设备,兼容不同版本鸿蒙系统对应不同的API Version等等。
(3)feature是指应用的动态性模块,一个APP中可以包含零个、一个或多个feature类型的HAP。
(4)Ability是引用所具备能力的抽象,一个应用可以包含一个或多个Ability,只有包含Ability的HAP才能独立运行。Ability分为两种类型,FA(Feature Ability)和PA(Particle Ability),FA/PA是应用的基本组成单元,能够实现特定的业务能力,FA有UI界面,而PA无UI界面(FA类似于Android中带有XML布局文件的Activity,PA类似于android中编写功能的类文件)。
(5)库文件:显而易见,库文件是应用依赖的第三方代码,例如so、jar、bin、har等二进制文件。和android相同,存放在libs目录。
(6)资源文件:应用资源文件,类似于android的res下的图片、布局、字符串、颜色等文件,存放于resources目录下。
(7)配置文件(config.json):在API 9中对应目录下的configuration目录结构写的哦欸之文件,用于声明应用的Ability,以及应用所需权限等信息。
(8)pack.info:描述述应用软件包中每个HAP的属性,由IDE编译生成,应用市场根据该文件进行拆包和HAP的分类存储。
三、技术岗位
首先是鸿蒙系统技术堆栈上的开发职位:配套硬件开发工程师、系统底层软件开发工程师、应用软件开发工程师等。
鸿蒙配套硬件开发工程师:目前市面上给出的薪资大概在8-10k,应该是比较入门的职位,只是把鸿蒙系统应用起来,不太需要对鸿蒙系统有非常深入的理解。常见于物联网设备公司。
鸿蒙OS高级工程师:这个就是华为自己在招了,主要就是做鸿蒙的开放平台,基本薪资给到25-50k,要求有5年以上的软件开发经验。
鸿蒙应用开发工程师:这个岗位需要的人数比较多,就业面也相对广泛。大致的薪资范围是15~30k,16薪。
总体来看,在技术这条链条上。还是把操作系统研究得越透彻的程序员,越值钱。
四、转鸿蒙要做哪些准备
从安卓开发人员转向鸿蒙开发人员,虽然无法平滑过度,但只要对鸿蒙OS的特性、开发环境以及与安卓开发的区别有所准备,还是可以加快不少速度的:
了解鸿蒙OS的基本概念:
学习鸿蒙OS的架构,特别是它的微内核设计。
了解鸿蒙OS的设计理念,尤其是它的跨设备协同和分布式能力。
学习鸿蒙OS的开发环境和工具:
安装和熟悉DevEco Studio,这是华为为鸿蒙OS开发提供的官方集成开发环境(IDE)。
理解鸿蒙OS的应用框架和API,目前主要是v9和v10。
掌握鸿蒙OS的编程语言和框架:
ArkTS必学,掌握ArkUI/ArkUI-X等框架。
至于盘古、MindSpore等,也可以适当进行了解。
从安卓到鸿蒙的代码迁移与适配:
在技术论坛了解迁移过程中的经验,也可以联系官方提供技术支持。
学习如何使用Ark Compiler,这是华为为提高应用性能开发的编译器。
有疑问加站长微信联系(非本文作者)