值得一谈的鸿蒙2.0,赶紧撸一下hello world
一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统 。现已开源,名为OpenHarmony。
2019年8月9日,华为在HDC开发者大会上正式发布鸿蒙系统。
2020年9月10日,华为在HDC开发者大会上如约发布鸿蒙 2.0,并面向应用开发者发布Beta版本。明年鸿蒙将全面支持华为手机。
值得一提的是,鸿蒙HarmonyOS正式开源,今年年底首先对国内开发者发布针对智能手机的HarmonyOS beta版本。
余承东强调,全球第三大移动应用生态正在破茧而出。「华为要构筑开放生态,将核心技术、软硬件能力全面开放给开发者和生态伙伴。」
据介绍,基于鸿蒙操作系统的HiLink 智能硬件生态,目前已经有 800 家合作伙伴,其中 HiCar 已合作 150 余款车,2021年计划预装超过 500 万台。HMS Core 已经发展到 5.0 版本,超过 9.6 万个应用集成 HMS Core,活跃用户 4.9 亿。
华为承受打压众所周知,但在大会上,余承东表示,即使遭受三轮打击,华为依然实现增长。今年上半年,其消费者业务销售收入 2558 亿元,消费者业务手机全球发货量达到 1.05 亿。
华为承受打压众所周知,但在大会上,余承东表示,即使遭受三轮打击,华为依然实现增长。今年上半年,其消费者业务销售收入 2558 亿元,消费者业务手机全球发货量达到 1.05 亿。
其实说了这么多,也只是一个噱头,未来的路还很长,我经常在blink里面看到有人投票说,华为鸿蒙操作系统将取代安卓操作系统,我先否定一下。发展好了最多也只是三足鼎立的局面,不可能取代,至于为什么?大家评论区吃瓜吧。
源码托管在国内知名开源平台码云上:https://gitee.com/openharmony
作为程序员,我也下载了源码,研究了两个晚上,顺带写了一个 hello world 程序。
官方介绍说是“轻量级 JS 核心开发框架”。
当我看完源码后发现它确实轻。其核心代码只有 5 个 js 文件。
· runtime-core\src\core\index.js
· runtime-core\src\observer\observer.js
· runtime-core\src\observer\subject.js
· runtime-core\src\observer\utils.js
· runtime-core\src\profiler\index.js
从名字可以看出来,这些代码实现了一个观察者模式。它实现了一个非常轻量级的 MVVM 模式(后端理解为MVC就好)。通过使用和 vue2 相似的属性劫持技术实现了响应式系统。
当我们开发的时候,通过Toolkit 将开发者编写的 HML、CSS 和 JS 文件编译打包成 JS Bundle,然后再将 JS Bundle 解析运行成C++ native UI 的 View 组件进行渲染。
“通过支持三方开发者使用声明式的API 进行应用开发,以数据驱动视图变化,避免了大量的视图操作,大大降低了应用开发难度,提升开发者开发体验”。基本上就是一个小程序式的开发体验。
jsruntime选择了 JerryScript是用于物联网的超轻量 JavaScript 引擎。它能够在内存少于 64 KB 的设备上执行 ECMAScript 5.1 源代码。这也是为什么在文档中说鸿蒙 JS 框架支持 ECMAScript 5.1 的原因。
SDK中的那些包仅仅是做 loader用的,大概是为了在 webpack 打包时解析 htm 组件用的,将 html 的 template 编译为 js 代码。
华为宣传的鸿蒙四大特性:
“分布式架构首次用于终端OS,实现跨终端无缝协同体验;确定时延引擎和高性能IPC,技术实现系统天生流畅;基于微内核架构重塑终端设备可信安全;通过统一IDE支撑一次开发,多端部署,实现跨终端生态共享”
“分布式架构、跨终端无缝协同体验”是说,华为搞了一个很妙的底层OS(“分布式OS架构”和“分布式软总线技术”,公共通信平台、分布式数据管理、分布式能力调度和虚拟外设四大能力),把不同终端的特性都归纳好了,能容纳在统一的架构里。这样对开发者和消费者来说,不同的终端产品能在一个平台里统一开发使用了。为什么能这么做,是因为鸿蒙OS重新设计了整个架构,安卓和iOS办不到。这是从系统架构层面说事。
“确定时延引擎和高性能IPC技术实现系统天生流畅”是说,鸿蒙搞了很妙的进程调度算法,进程通信机制天然就好。进程就是不同程序的任务,一个手机上面几个APP同时跑,需要调度算法来分配系统时间轮换着运行。“确定时延”就是调度算法能保证,进程不会因CPU被其它进程占据而卡死,总能在规定时间内轮到自己顺利执行。因为架构是新的,所以应用响应时间能降低四分之一,安卓和iOS因为架构的原因办不到。IPC就是进程间通信(Inter Process Communication),进程之间非常需要通信传递消息和数据来协同运作。因为微内核架构好,鸿蒙的IPC效率能提升5倍,安卓和iOS受系统架构限制办不到。这是对关心性能的用户宣传。
“基于微内核架构重塑终端设备可信安全”是说,鸿蒙系统更安全,因为内核代码少,出现漏洞的机会也就极少,不象安卓和iOS那样代码一堆容易找漏洞。苹果悬赏找到一个漏洞100万美元,是让人来攻击。鸿蒙对整个系统,设计了一套安全机制,只要按照这套机制做,安全性能就能极大提升。这套安全机制不是基于攻击测试的,而是基于数学模型算法的,能形式化证明理论上就是安全的,比传统安全验证方式要高一个档次。这对关心系统安全的用户很有吸引力。
“通过统一IDE支撑一次开发,多端部署,实现跨终端生态共享”,是呼应第一个特性。第一个特性是说,鸿蒙从系统架构上,让跨终端统一开发成为可能。统一IDE是说,华为开发工具也准备好了,这个以方舟编译器为核心的工具包非常牛,可视化编程,以后还几种语言混着开发都能统一编译,直接出高效机器码。总之意思就是开发方便高效了,比现在安卓和iOS的开发工具效率更高。这是对程序员开发者喊话。
从这些鸿蒙的“特性”可以看出,鸿蒙真的是面向未来的下一代操作系统,有非常多的优势。鸿蒙不是安卓或者iOS在手机上的替代品,而是跨平台的新系统。起码在立意上,鸿蒙真不是对标安卓或者iOS,而是对标谷歌的Fuchsia(也是微内核的)。通过鸿蒙的四大特性,也可以了解为什么谷歌要搞Fuchsia,因为安卓架构的技术潜力有限,要搞下一代操作系统只能重新搞全新生态系统。
最后,收集几个大家可能会有疑问的槽点,欢迎在评论区留言!
1.线下华为各个型号普遍涨价了,断供会影响?
2.华为鸿蒙系统和安卓操作系统,你更看好那个?
3.未来三年会不会有超过一半的国内厂商用上HMS?
4.大家觉得鸿蒙系统的未来前景如何?
5.作为程序员,有兴趣用华为的开发平台工具DecEco Studio体验写一个“Hello world”?
值得一谈的鸿蒙2.0,赶紧撸一下hello world相关推荐
- 值得一谈的鸿蒙2.0,程序员们拿起你们手中的编译器撸一下hello world
一款"面向未来".面向全场景(移动办公.运动健康.社交通信.媒体娱乐等)的分布式操作系统 .现已开源,名为OpenHarmony. 2019年8月9日,华为在HDC开发者大会上正式 ...
- 华为手表新款watch gt3_明年华为手表手环将搭载鸿蒙2.0,还有自研RISCV芯片
在8月9日于东莞召开的华为全球开发者大会上,华为消费者业务CEO余承东正式发布了基于微内核的面向全场景的分布式操作系统--鸿蒙OS (HarmonyOS).根据华为的规划:今年鸿蒙OS 1.0版本将率 ...
- 鸿蒙2.0!用 JavaScript 开发鸿蒙应用
华为2020开发者大会召开在即. 本来华为的开发者大会,我都很少关注,可是所有人关心的鸿蒙操作系统,都会在发布会上放出消息.今年也不例外.这一次,鸿蒙将会在开发者大会上,发布 鸿蒙2.0. 去年虽然发 ...
- 安卓手机兼容_重磅:鸿蒙OS2.0手机开发者Beta版发布,能兼容安卓
12月16日,鸿蒙OS2.0手机开发者Beta版发布,这对于数码界来说是一个重磅的消息.而且值得注意的是为了能让用户或得更好的服务用户,鸿蒙OS2.0能兼容安卓. 而对于这款系统,目前EMUI机型将能 ...
- 关于鸿蒙 2.0,那些开发者不知道的一切
整理 | 高卫华,视频 | 王晓曼 责编 | Just.伍杏玲 出品 | CSDN(ID:CSDNnews) 头图 | CSDN 下载自视觉中国 鸿蒙操作系统在推出一年后,鸿蒙 2.0 操作系统如约 ...
- 外国人评价鸿蒙os2.0发布,鸿蒙os2.0发布以来广获好评,却遭到部分网友指责是披着羊皮的狼...
自从4月底华为鸿蒙os2.0系统正式公测以来,一直到现在,相信很多的华为粉丝都已经更新了鸿蒙系统. 虽然网上的评论褒贬不一,但是对于鸿蒙系统的体验手感来说还是好评居多. 更低的使用功耗,更高的流畅性以 ...
- 怎么预约鸿蒙系统,华为鸿蒙2.0系统-鸿蒙2.0系统预约-艾艾软件园
<鸿蒙2.0系统>是由华为预计推出的一款全新操作系统.未来将广泛应用华为自家的多款电子产品上,功能更强大,互通更高效,隐私更安全.实现多项产品之间的信息共享,使用起来十分方便,绝对不要错过 ...
- 华为鸿蒙2.0的意义,鸿蒙华为研发了多少年_华为鸿蒙意义
鸿蒙华为研发了多少年 鸿蒙操作系统计划早在2012年的时候就开始制定.执行,至今已经有9年之久.鸿蒙操作系统一直是华为内部的秘密项目,而且华为还挖来了操作系统领域的牛人--陈海波教授.消息称鸿蒙操作系 ...
- 华为新机搭载鸿蒙os,华为5G巅峰之作:2K超清屏幕+鸿蒙OS2.0+3D结构光 颜值与性能并存...
从图片中可以看出,这款华为新机镶嵌了一颗前置镜头在屏幕左上角部位,该机在屏幕上采用了COP封装技术,保留了极窄的上下边框,极大的提升了手机屏占比.根据资料显示,该机前置镜头的像素为3600万像素,采用 ...
最新文章
- Android常用知识点回顾
- Fabric--测试链码
- java实现遍历树形菜单方法——实体类VoteTree
- JAVA 向文本文件中换行插入字符
- 南漂DBA——除了996,还可以收获这些...
- 一个小小的总结--关于写博客这件事
- POJ-3421 X-factor Chains---求因子+递推 或 素因子+组合数学
- Spring: 读取 .properties 文件地址,json转java对象,el使用java类方法相关 (十三)
- Java在程序设计题目中的妙用
- 我们说的目标导向不是 “唯结果论”
- 在php中使用守护进程
- 一幅图告诉你C-C++注释转换有多简单
- UE4 虚幻引擎 Metahuman怎么导入到项目中
- 如何设置华为悦盒Ubuntu系统的无线WiFi自动连接
- 一节计算机课日记,电脑课作文5篇
- 自动清理源计算机设备驱动,win10系统删除过期驱动程序设备的设置技巧
- PLC若想实现以太网口无线通讯,需要具备哪些条件?
- Sourc Insight 添加 磁盘目录
- python收音机_FM收音机入门,以及Python实现FM调制解调
- Apache Pulsar 2.6.1 版本正式发布:2.6.0 功能增强版,新增 OAuth2 支持
热门文章
- 怎么讲服务器上的文件装进电脑,怎么把电脑文件放进云服务器
- names文件和data文件_data.table让你的读取速度提升百倍
- ajax默认什么方法,ajax设置默认值ajaxSetup()方法
- Java多线程(2)--Thread类继承和Runnable接口创建线程
- 注意力机制可视化_目标跟踪中的(STAM)时空注意力机制
- java 生成校验验证码_java 验证码生成与校验
- 数据结构之排序五:选择排序
- Video 对象方法 canPlayType()
- C#中数据库事务、存储过程基本用法
- 解决checkbox与对应文字不对齐的问题