导读:在本篇文章里,您将了解到HarmonyOS是什么,以及有哪些振奋人心的特性。并且猫林老师会在本篇文章里给出结论:鸿蒙必能蚕食安卓份额,并给出原因分析。
HarmonyOS,中文称鸿蒙系统或鸿蒙OS。很多人对鸿蒙系统还存在误解,以为鸿蒙其实类似于Android、iOS只是给手机、平板用的移动操作系统。其实不然,鸿蒙系统是华为推出的面向全场景的分布式操作系统。所谓面向全场景是指它将来不光是给予手机、平板搭载,而是会对诸如电脑、车机、手表、电视、音响、眼镜及各种家电家居等等多设备都能搭载的操作系统。这就是华为所宣导的全场景智慧生活战略1+8+N(手机+8种常用设备+万物,共同协作共同参与)

正因此,为了覆盖这么多终端,必然需要对应的应用,所以鸿蒙系统将带来大量岗位。待到9.30左右HarmonyOS Next发布正式版面向普通用户,绝对是爆发之时。
对于普通用户而言,其实不需要关注技术上有哪些特点。就好像大部分人是说不出iOS和安卓技术上有哪些区别,但能感觉出某些方面哪个系统更好用,这就是所谓的“用户体验”。但咱们可不“普通”,都是一群奋斗在一线的大牛(嗯,牛马的牛),所以一会有必要泛泛的从技术方向了解下鸿蒙系统的特点。在聊这些之前,猫林老师先表个态:我觉得鸿蒙系统能不能取代iOS不好说,但绝对能把安卓蚕食掉(别不信,当年也没人相信诺基亚的塞班会那么快被淘汰)。至于原因嘛, 各位同学耐心听完猫林老师给你分析鸿蒙系统的特点,就明白了。
总体说来,HarmonyOS的特点,其实华为提炼出了三大特征:

即一个工程、一次开发上架,即可用于所有设备(开发者能根据功能按需部署)
搞过前端的同学都知道,一套代码完美运行于多个设备有多么难;光界面布局要想在各种设备上完美呈现就极其麻烦,很多同学一听响应式布局就头皮发麻。更何况还要功能适配、硬件适配……


言归正传:华为又是怎么让实现一次开发,多端部署的呢?
简而言之就是华为提供了一堆核心能力,把一些功能高度抽象出统一的接口让程序员调用,调用后即可在不同设备呈现不同效果(类似于面向对象里的多态)。当然这句话有点抽象,再讲直白一点,就好比是华为给你提供了一把智能凳子,对你而言,你只是要调用这把凳子。继而在不同的环境下,这把凳子自己有不同的功能。比如你在一个人工作环境下,凳子提供休息。当你在与产品经理面对面沟通需求环境下,它又能自动成为百兵之王,暗器之首!

正儿八经解释;请看图

华为提供界面级、特性级、代码级的一多能力,来实现一次开发,多端部署
比如:一套界面如何保证多个终端下都能用?华为提供了自适应布局能力、响应式能力(而且大部分组件内置,几乎不写布局代码也能实现)保障界面美观。再比如交互事件归一:电脑上可能是鼠标点击,手机上可能是手指触摸,耳机上可能是拍打,而华为统一抽象成一种事件比如叫click,它会根据设备的不同自己识别成点击、触摸、轻拍等(这里不一定严谨,仅作举例)
其他两个:特性级、代码级。这里就不解释了,随着学习。你会一步一步理解是什么
这是我强烈想让大家知道的特性,也是我认为HarmonyOS能蚕食Android份额的一大原因。
那,这个特性到底指的是什么呢?
要解释可分可合之前,还得先给大家介绍一个东西叫**元服务**
什么是元服务呢?
微信小程序,想必大家都用过。而且是不是跟猫林老师一样,越用越顺手,越用越爽。能用小程序的地方,都不想再下载app来用了,特别是下单买咖啡之类的,对不?
为什么微信小程序会越来越火?以至于几乎每个app都适配了一套小程序呢?最简单直接的原因就是:轻便!即用即走,甚至对用户而言感觉就好像没有多下载东西一样。
那又为什么在解释元服务之前,猫林老师先给大家提炼了一下微信小程序呢?
但元服务远远不止于轻便,它对比微信小程序还有如下优势
所以,我们可以得到结论,元服务可以理解为就是一种系统级的轻量应用(系统级小程序),特点类似小程序,但比小程序更优
这里来句题外话:微信迟迟不愿意适配鸿蒙,猫林老师个人认为原因之一也可能是因为微信意识到元服务带来的巨大挑战,会导致小程序被冲击甚至取代。
那解释了元服务后,到底什么是可分可合?
那么,森sei,能告诉我什么是自由流转吗?
当然可以,自由流转是一个能更加提高用户体验的功能。
传统的应用一般只能在单个设备内运行。而现在用户的设备众多,很多时候需要切换使用,传统应用很难做到。举个例子,当你在车里使用车机导航到了目的地找到地方停车后,停车点距离你要到的最终楼栋还有几百米路程,而你又不熟路。这时候你只能下车后再次操作手机打开导航软件,再设置为步行模式,这就是传统应用
而鸿蒙系统提供了自由流转能力后,你开发的应用可以方便的跨设备协作。就好比上面的导航案例,你可以车里开车机导航,当到达停车场后,拿手机跟车机一碰(或者靠近),则此时手机会自动打开手机里的导航,并给你步行导航至最终地点,甚至还开放了实景AR能力帮助你导航(路痴福音,且高德鸿蒙版已实现),这就是所谓的自由流转:即同一个应用从一个设备流转到另外一个设备
怎么样?是不是极其的能改善用户体验?想像一下,将来你有一天坐在沙发前追剧,突然想上厕所开大,可剧情正精彩,不想错过怎么办?难道抗着电视进厕所或者硬抗一个大?显然不可能!你最佳做法是马上去厕所再用手机接着看,可在传统app体验里,你需要自行打开手机对应的app,再搜索同名剧集,然后再跳转对应的集数和播放时间,一套流程下来极其麻烦,说不准你大都开完了,剧集还没缓冲完。而在自由流转下,你只要用手机或者平板轻轻一靠近电视,就自然而然无缝衔接到手机或平板上,你就可以放心带着你的手机和平板去继续一边开大一边享受着剧情的冲击!

统一生态其实没啥好说的,主要是指支持多端融合,并且统一接入标准,实现快速将其他平台的应用开发框架接入到鸿蒙。
这里猫林老师主要想说说原生智能:
所以原生智能其实就是系统提供好了智能能力
但是猫林老师在这里还想隆重介绍一下鸿蒙系统里内置的意图框架
所以猫林老师认为鸿蒙可能会蚕食安卓的其中一部分原因就是因为鸿蒙的这三大特性。这三大特性不是安卓实现不了,而是安卓能实现,但不一定在设备上有统一标准,毕竟安卓现在太碎片化,各厂商有自己的深度定制,很难形成统一标准。更何况鸿蒙依托国内环境,在国家号召核心技术自主化的大背景下,更具有地利。
同学:好嘛,森sei,我知道HarmonyOS是什么了,请告诉我怎么学吧!
我:废话,当然是跟着我的教程一步一步学即可!
当然咯,大家若是想除了猫林老师的教程外,自己再深入学习。其实猫林老师是很建议大家去阅读一下鸿蒙官方指南的,以及鸿蒙学堂里提供的Codelabs更是提供了丰富的案例供大家实战演练,将来猫林老师里提供的部份项目案例也会从Codelabs里借鉴。其次,大家学开发,最主要的不是看,而是写。希望后面涉及到编程,大家一定要动手敲上个几遍才能真正理解和使用它!
今天的介绍就到此为止,下一篇开始我们就将进入到技能的学习了,请大家做好准备,主要是准备好开发环境,也即下载安装好开发工具
beta2,API版本为12。如果您不是这个版本,请记得升级。因为最新版绝对是越来越靠近最终正式发布的纯血鸿蒙,猫林老师也是基于最新版给予讲解。然后我们总结下今天给大家聊了什么。
单选题
当用户希望能够在多个设备间来回切换、完成多个任务,开发者可以使用以下哪个核心能力,以便应用不间断地给用户提供服务的能力。
A. 统一生态
B. 可分可合
C. 自由流转
D. 原生智能
应用如需在多个设备上运行,需要适配不同的屏幕尺寸和分辨率、不同的交互方式(如触摸和键盘等)、不同的硬件能力(如内存差异和器件差异等),开发成本较高。鸿蒙开发提供了什么特性节约开发成本?
A. 一次开发,多端部署
B. 可分可合,自由流转
C. 统一生态,原生智能
D. 一套代码运行在不同虚拟机
如果开发者在原生应用版本的基础上,想要提供多种服务给用户,开发者选择开发场景的最优选是?
A. 独立开发一个应用
B. 开发多个元服务,按需组合为一个复杂的应用
C. 独立开发一个元服务
D. 同时开发应用和多个元服务
多选题
用户使用应用的情境发生变化时(例如从室内走到户外、从办公室到车上等),之前使用的设备可能已经不适合继续当前的任务,或者周围有更合适的设备,此时,可以选择使用新的设备来继续当前的任务。以下哪些场景适合使用跨端迁移能力?
A. 在外时手机上编辑邮件,到公司后在2in1设备上继续编辑
B. 在外时手机玩游戏,到家后希望获取更好的视觉体验,在平板上继续玩
C. 在家里智慧屏上看视频,当下需要出门时,可以手机上继续观看
D. 手机视频通话中,到家后家中有智慧屏,可以更沉浸地视频聊天
简答题:
判断题: