鸿蒙开发,对于前端开发来说,究竟是福是祸呢?

提前声明: 先说好哈,不要一上来就开喷,好吧,不感兴趣的话你可以不用看下文直接划走,直接喷俺有点承受不住,心脏不好。如果你感兴趣,你可以先把这篇文章看完,看完后感觉俺讲的还挺有道理的那就不喷,如果讲的你认为啥也不是,那就往死里喷,喷不动了俺也加入。

唠叨唠叨

最近,鸿蒙开发的风头也吹到俺这里了,于是我便上网看了看,就以俺的知识面去聊一聊鸿蒙,究竟是个啥,有啥用呢。

在此之前,咱们可以先看个视频来大致了解一下鸿蒙系统究竟是干啥的,有啥好处:鸿蒙的官方定义哔哩哔哩bilibili(该视频为黑马的课程视频,原视频没暂时没找到,可跳到 03:46~12:17 和 13:27~19:35 两个时间段)。

如果你看了这个视频的话,相信你对鸿蒙也有了一定的了解了。

为啥我想说鸿蒙呢

最近一段时间,总是有人在说一些(俺认为哈,别人我就管不着了哈)有些莫名其妙的话术:什么前端以死呀、鸿蒙就是个安卓套壳呀、前端的春天要来了呀、等等之类的。是真的死了吗,俺不这样认为,只是技术门槛提高了而已,毕竟市场他是活的,人它也是活的,是活的话他就有变的时候,你的技术不变,不去进行升级的话,那就会被现有的市场所淘汰。优胜劣汰这个道理俺相信你们每个人都懂,只是有些人不想去面对而已,仅此而已。

鸿蒙系统又是个啥

俺简单来说哈,其实就一句话:鸿蒙系统是全场景 、面向未来、万物物联的

如果这句话比较难理解,或者俺通过一张图让你更直观一点:

如果你还是不理解的话,可以去华为官网看看官方对于鸿蒙系统的解释。

那鸿蒙系统的特点有啥

  1. 统一OS,弹性部署

一套操作系统,满足大大小小所有设备的需求,小到耳机,大到车机,智慧屏,手机等,让不同设备使用同一语言无缝沟通。

  1. 硬件互助,资源共享

搭载 HarmonyOS 的每个设备都不是孤立的,在系统层让多终端融为一体,成为"超级终端",终端之间能力互助共享,带来无缝协同体验。手机可以连接一切设备,可以将这些设备看作一个整体,如当手机需要操作自家的音响时,直接在手机上简单动一动手指头就行了,就像操作手机上的喇叭一样方便。

  1. 一次开发,多端部署

开发者基于分布式应用框架,开发者只需要写一次逻辑代码,就可以部署在多种终端上,在多个设备上安装了。

  1. 应用自由跨端

HarmonyOS 原子化服务是轻量化服务的新物种,它提供了全新的服务和交互方式,可分可合,可流转,支持免安装等特性,能够让应用化繁为简,让服务触手可及。

  • 咱们来以一个例子理解一下:

假设咱们要用安卓操作系统去控制一台音响,这台音响有切歌功能、点歌功能、语音聊天功能,现在俺有点寂寞,需要音响陪我聊会天,俺只需要音响的语音聊天功能,但你必须要下载他的完整APP,并不能俺需要用啥功能就下载啥功能。而鸿蒙系统就可以做到。

  1. 用"简单"激活你的设备智能

HarmonyOS 是新一代智能终端操作系统。为不同设备的智能化、互联与协同提供了统一的语言。设备可实现一碰入网,无屏变有屏,操作可视化,一键直达原厂服务等全新功能。通过简单而智能的服务,实现设备智能化产业升级。

用安卓操作系统时,你需要下载设备对应的APP才能控制该设备,而鸿蒙操作系统,你直接将手机与设备上的芯片碰一碰,就可以直接通过手机来使用设备了。

小提示: 俺家也没几个鸿蒙相关的设备,具体的俺也不是特别清楚,这些都是俺从网上了解到的。手机能连接上设备的前提是该设备的厂家与华为达成了合作才行吧(好像是这样的)。但俺用的是华为手机,路由器也是华为的,就这两个华为设备从俺的体验上来说哈,那还是不错的。

可以与安卓做下对比

  1. 内核方面的对比

安卓系统:

是基于linux的宏内核设计 ,宏内核包含了操作系统绝大多数的功能和模块,而且这些功能和模块都具有最高的权限,只要一个模块出错,整个系统就会崩溃,这也是安卓系统容易崩溃的原因。好处就是系统开发难度低。

鸿蒙系统:

是微内核设计:微内核仅包括了操作系统必要的功能模块(任务管理、内存分配等)处在核心地位具有最高权限,其他模块不具有最高权限,也就是说其他模块出现问题,对于整个系统的运行是没有阻碍的。微内核稳定性很高。而且鸿蒙系统包含了两个内核,如果是手机APP是基于Linux内核,而如果是其他的硬件是基于LiteOS内核。

  1. 运行速度的对比

安卓系统:

安卓程序不能与系统底层直接进行通信活动,是运行在虚拟机上的。如果虚拟机出了问题话的那系统就是卡住。

鸿蒙系统:

鸿蒙系统中的方舟编译器解决了这个问题的,任何由编译器编译的软件,是直接运行在操作系统中的,可以直接与系统底层进行通信。鸿蒙的运行速度更快

  1. 作为手机操作系统的对比

安卓和鸿蒙都是基于安卓开源项目(AOSP)进行开发的。

而安卓开源平台是可以在开源许可下自由使用和修改的。国内外很多手机厂商都根据这套代码制定了自己的操作系统,比如:三星、小米、魅族等。而华为也是基于这套开源体系,制定了鸿蒙操作系统。

鸿蒙操作系统的构成:

HarmonyOS = 安卓开放平台的开源代码 - GMS - 安卓UI + HMS + 鸿蒙UI + 分布式软总线 + 以Ability为核心的应用开发框架。

  1. 连接其他设备的对比

安卓系统:

安卓手机连接其他设备,不管从 app 开发方面,还有使用方面都非常麻烦,而且如果换一个第三方设备,还需要把发现,配对,连接,组合,验证的过程再次操作一遍。

鸿蒙系统:

但是鸿蒙就非常简单了,从 app 开发方面,只要写很少的代码就可以调用第三方硬件,从使用的角度来讲,不管是多少设备连在一起,鸿蒙的终极目标是都能像使用一台设备那样简单。

那鸿蒙究竟是不是安卓的套壳呢

网上有很多人说鸿蒙就是安卓的套壳,还用人说人家搞安卓开发的都是这样认为的。都不太看好鸿蒙,不要跟风,好吧。别人说是就是呀。你真的有去认真了解过吗。经过俺的一番捯饬后,俺大致的讲讲俺的理解哈。

其实吧,为啥有这么多人说鸿蒙就是安卓的套壳呢,归根结底呀,是这两家的 "祖宗" 其实是一家人,也就是安卓和鸿蒙都是基于安卓开源项目 AOSP 进行开发的。而且 AOSP 里的代码,是全球很多开发者共同维护开发的,华为也是该代码的提供者之一,任何人都是可以在开源许可协议下去自由使用和二次修改的。而华为也是基于这套开源体系,制定了鸿蒙操作系统。这就是为啥都说鸿蒙是安卓的套壳的原因了。

小提示: 可能会有人问俺 AOSP 又是啥东东,俺在网上找了一篇文章,你可以看看,了解一下:鸿蒙系统不是安卓系统?AOSP 为你揭秘! (baidu.com)

所以呢,不是套壳、不是套壳、不是套壳 重要的事说三遍哈。你要是还是那样认为那话,那俺只能说,我嘞个豆!!!

就国家政策和市场形式

其实从央视力挺华为就可以看出了,我国对鸿蒙系统还是相当重视的(网传,鸿蒙系统会上交给国家,俺也不知道是真是假)。

就俺认为哈,代码这玩意都是老外搞出来的,一个操作系统能难倒他们,只是安卓和ios这两家独大,资历雄厚。可能有国外有好的操作系统出现,只是还没广为人知就已经被资本扼杀在摇篮里了。这又有谁知道呢。当然了这写只是俺的猜测而已。

如果一个国家的操作系统多了,其实也不利于社会的管理和发展,国家一定会主推一个操作系统,然后其他系统为辅,从而形成 "百家争鸣" 的形式。

另外哈,俺在招聘网上也查了看了一下,鸿蒙开发相关岗位的薪资大都与安卓开发平齐甚至有的还比安卓开发相关岗位的薪资要高得多(俺看到一家的鸿蒙开发的薪资,18~30K 16薪,说实话哈,俺是真的心动了)。

声明一下: 以上有关的国家和社会的话术,都是俺自我认为的、理解的,请广大网友不必太纠结其对错,更不要上升到国家层面去给予评论和回复。谢谢!

回归主题

回归主题: 鸿蒙开发,对于前端开发来说,究竟是福是祸呢?

看个人理解吧,俺认为哈,是福(俺已经开始学了)。就国内哈,如果明年华为推出的 HarmonyOS Next 将真的彻底抛弃 AOSP (华为的这个决定很大胆,这也是大部分的安卓开发者头痛的事,所以才会非常反感鸿蒙)。也就是说,明年,所有的安卓应用将不能在华为手机上使用,要想使用的话,就必须采用鸿蒙原生开发将应用改为鸿蒙应用程序。那你想想哈,我国有多少个应用,又有几个是用鸿蒙原生开发的或重构的,你再想想哈,这么多应用都要重构,那是不是这工作量非常之巨大,这么巨大的工作量,那公司是不是要招鸿蒙开发相关岗位了,薪资给少了你肯定不愿意去呀,那它公司又急需呀,那他的薪资待遇会不会被提高。那如果你会的话那你是不是就能上,那样的话害怕找不到工作。

这就是相当于前端开发的一个红利期,而且这个红利期至少会持续两三年势头不会淡。其实俺说它是前端开发的春天的话也不为过,至少是在国内哈,国外俺就不知道啦。

当然这还得等到明年华为推出的 HarmonyOS Next 是否真的彻底抛弃 AOSP ,如果是的话,那俺的认为就是对的。如果是假的话,那此上的一切都免谈,都是瞎扯淡。

上手试试

小提示哈: 如果你看完了上面的内容,你发现对鸿蒙开发产生了一定的好奇,你可以直接去官网注册个账号HarmonyOS应用开发官网 - 华为HarmonyOS打造全场景新服务,实名认证一下(俺建议采用银行卡的方式认证,这样通过认证更快),然后里面有在线的视频课程,它会带你具体了解如何开发鸿蒙原生应用。下面的内容你就可以忽略了。

俺电脑上没装v16.19.1版本的node:俺用的是16.20.1的,不知道行不行,再装一个吧:

路径与编译工具的安装地址是一致的:

点击next,如果出现报红,选择第二个就可以了哈。

创建个应用:

创建第一个应用 FirstApp:

咻咻等待一下的啦,让项目配置一下资源。

第一次运行会有上图的提示信息,将其 × 了就可以看到 Hello World 效果了

小改一下:

使用模拟器:

登录后,选着P50机型模拟器调试:

也不知道为啥,有时候就是无法用P50机型模拟器调试。后来俺还是用了本地模拟器。

相关推荐
c2892480843s9 小时前
【鸿蒙心迹】网络请求封装实战:RCP 选型、拦截器与弱网预算
移动开发·网络请求·harmonyos·鸿蒙·rcp
卸任11 小时前
Vibe coding工具使用心得
前端·ai编程
brien911 小时前
为什么模型标称 1M,Google Antigravity 聊到 256K 却突然失忆?我们给它做了个原生行内监控圆环
前端
修炼的dance12 小时前
录屏关键帧间隔多少合适?六档实测,2秒到10秒小了75.6%
前端
Lank_M12 小时前
关键帧从1秒拉到10秒,录屏小87.3%,摄像头小10.8%
前端
补码缩写12 小时前
用 ffprobe 拆录屏,八成字节在 29 个关键帧上
前端
百思不得小李12 小时前
一个复杂的动态表单是如何实现的
前端·设计模式
陈随易12 小时前
Cmder 停更 17 个月,2.0 支持 Windows Terminal
前端·后端·程序员
风骏时光牛马12 小时前
前沿视界
前端
kyriewen12 小时前
我扫了 814 个依赖,97 个还敢要 Node 10
前端·javascript·程序员