为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)

为鸿蒙说两句公道话
今天看了鸿蒙系统的评测,看完后我感觉很欣慰,为什么这么说 ? 不是很多人吐槽鸿蒙是 Android 套壳吗 ?或者叫鸿蒙 UI 吗?说鸿蒙没有自己的核心技术。看了鸿蒙系统的设计,底层确实是基于安卓的 AOSP 接口没有错,但是我倒是觉得系统设计者应该是一个务实的家伙。因为至少没有被不理智的民族主义冲昏头脑,没有蠢到真正的从零开始设计一套新的系统,而是可以让用户没有学习成本、无痛的切换到一套新的操作系统上面。
如果不是共用底层,那么你基本不可能通过在线升级把 Android 升级为 鸿蒙 OS,还能兼容 Android 的海量应用(你想想你的 Android 可以在线升级为 IOS 吗?)等等……
为什么说无痛迁移这么重要 ?因为如果真正的开发一套全新内核的操作系统,会遇到以下这些无法解决的问题:
- 没有生态:如果不跟安卓共用底层,那么无法兼容目前安卓海量的应用程序,一个没有应用程序的系统,再强大再好用,你会切换吗 ?
- 不稳定:Window/Mac OS 都是经过30年的长期进化才有的今天的稳定性,Android 也有10多年的进化,如果从 0 开发新系统,那么快则 4-5 年系统才能趋向稳定,华为等得起,市场也等不起
- 成本高:就算华为再有钱,完全从零开发操作系统的成本是无法估量的,根据估值微软的 Windows 就已经接近千亿美金,华为目前市场占用率下滑,不可能还有那么多资金投入到操作系统上
选择跟 Android 共享底层会带来什么好处? 如下:
- 兼容生态:就像上面说了,用户切换到鸿蒙,不会有任何的阻碍,成本极地,因为操作就安卓系统差不多。是一个可以不被民族主义绑架也能真正产生价值的产品
- 成本低:这里就不需要多说,底层不用自己写了,起码节省 80% 的开发成本,可以把更多的精力投入到扩展系统能力上,例如分布式协同,万物互联等等
- 稳定性:安卓底层有多稳定,鸿蒙就有多稳定,增加用户切换的信心
我相信鸿蒙的设计者选择和安卓相同的 AOSP 底层是经过深思熟虑的,是真正能看清现实,为什么这么说:
- 知道那些无脑吹捧华为的狂热的民族主义只是少数人,他们也不是华为的目标用户,他们最终还是会趋向性价比去选择产品,然后留下一句:下次一定
- 那些抨击华为没有从零开始写操作系统的人也是少数,他们也不是华为的目标用户,就算真的从零设计实现了操作系统,他们也还会继续喷其他的缺点,该喷的还的喷,喷子永远不会停下来
华为的鸿蒙的设计是真正从普通用户和使用者的角度出发,在乎用户体验和实用的设计。所以华为的最终目标用户是:我们大多数的普通人,我们购买一件产品,不是因为它有某种“爱国情怀”的标签,也不是它是不是真正的从零开始实现的操作系统,我们普通人需要的就是一个价格合适,可以给我们生活带来便利的工具。这才是我们会购买它的根本原因。
大胆猜测华为的下一步动作
大胆猜测一下,我相信华为下一步的目标肯定会替换到安卓的 AOSP 底层,只是这块工作难度太大,时间和市场都没办法等这么久,所以只能先基于 AOSP 先把应用层实现,等应用层铺开后,鸿蒙的应用层生态建立后,再替换为鸿蒙的内核,兼容 AOSP 那么可以做到对应用层无干扰的情况下完成整个操作系统的全部替换,那么鸿蒙就真正的意义的“完全自主研发的操作系统”。或许你会疑问这么做会不会成功 ?答案是肯定的,因为已经有很多类似的成功案例,我们看看以下两个比较类似的案例:
他们的共同点是什么 ?
kunbernetes 是位于应用层的容器调度工具,起初它的底层是基于 Docker 实现的(非常类似鸿蒙 OS 基于安卓的 AOSP 底层实现应用),但是随着 kunbernetes 的发展和壮大,大家都开始依赖 kunbernetes 后,Docker 本身也成为限制 kunbernetes 发展的瓶颈,kunbernetes 就直接把 Docker 替换为自家的容器实现,技术上更可控,因为大家都是面向使用 kunbernetes 至于底层是用 Docker 还是自家的容器,who care ? 只要不影响用户使用就好。
苹果自家 M1 替换 Intel 芯片这个案例大家应该都知道了,当时苹果还是小公司的时候,不得已使用 Intel 芯片作为自己产品的核心处理器,然后随着苹果市场份额壮大,Intel 逐渐成为苹果发展的瓶颈,因为大家使用的是苹果的应用程序,所以后面就算把 Intel 芯片替换掉,只要苹果能保证 M1 兼容应用程序,那么底层是使用 M1 还是使用 Intel 谁会在意 ? 后面 M1 芯片的苹果产品受到市场认可,也证明了这策略是成功可行的。
只要掌握应用层的生产资料,那么底层使用什么并不重要,我相信也这是鸿蒙的思路,只要等到鸿蒙生态成熟,那么未来某一天我们可能会突然看到新闻 华为鸿蒙系统决定放弃 安卓AOSP底层 替换为鸿蒙核心 的时候,也只是会心一笑而已。因为它根本就不影响你的使用。所以你无需关心它底层到底是安卓的AOSP还是真正重写的鸿蒙OS内核。
文章到这里就差不多可以总结了:
- 我认为鸿蒙选择跟安卓共用底层是正确的选择,不仅可以让用户无缝升级,还能复用目前海量的安卓 APP 市场,真正从用户使用的角度设计系统,而不是被民族主义冲坏理智的头脑
- 我相信鸿蒙OS在未来替换会逐渐安卓的AOSP底层,完成真正意义上的“完全自主研发操作系统”,这个里程碑对于我们还是蛮有意义。只是这个阶段太难完成,鸿蒙OS和用户都还需要时间来建立鸿蒙OS的生态壁垒
本文完 2021.6.3
phoenix 肖斌 于 广州
为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)的更多相关文章
- MySQL 只能做小项目?松哥要说几句公道话!
松哥上学那会,很多人对 MySQL 有一些偏见,偏见主要集中在以下几方面: MySQL 不支持事务(事实上 MyISAM 有表锁,但是效率比较低) MySQL 存储的数据量比较小,适合小项目,大项目还 ...
- 为Java说句公道话
为Java说句公道话 有些人问我,在现有的语言里面,有什么好的推荐?我说:"Java. " 他们非常吃惊:"什么?Java!" 所以我如今来解释一下. Java ...
- 【转】给Java说句公道话
有些人问我,在现有的语言里面,有什么好的推荐?我说:“Java.” 他们很惊讶:“什么?Java!” 所以我现在来解释一下. Java超越了所有咒骂它的“动态语言” 也许是因为年轻人的逆反心理,人们都 ...
- 神级程序员通过两句话带你完全掌握Python最难知识点——元类!
千万不要被所谓"元类是99%的python程序员不会用到的特性"这类的说辞吓住.因为 每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生 ...
- 两句话掌握python最难知识点——元类
千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来 ...
- 两句话掌握 Python 最难知识点——元类
千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三,三生万物 我是谁?我从哪来 ...
- Leetcode884.Uncommon Words from Two Sentences两句话中的不常见单词
给定两个句子 A 和 B . (句子是一串由空格分隔的单词.每个单词仅由小写字母组成.) 如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的. 返回所有不常用单 ...
- 简单两句话解释下prototype和__proto__
先上两句代码: var Person = function () {}; var p = new Person(); 把new的过程拆分成以下三步: <1> var p={}; 也就是说, ...
- 对百度WebUploader开源上传控件的二次封装,精简前端代码(两句代码搞定上传)
前言 首先声明一下,我这个是对WebUploader开源上传控件的二次封装,底层还是WebUploader实现的,只是为了更简洁的使用他而已. 下面先介绍一下WebUploader 简介: WebUp ...
随机推荐
- B - 真·签到题 FZU - 2214(背包)
Given a set of n items, each with a weight w[i] and a value v[i], determine a way to choose the item ...
- Mybatis的简单增删改查
刚开始学习Mybatis可以先看下官方文档,MyBatis是支持定制化SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis避免了几乎所有的JDBC代码和手工设置参数以及抽取结果集.MyBat ...
- hdu2167 方格取数 状态压缩dp
题意: 方格取数,八个方向的限制. 思路: 八个方向的不能用最大流了,四个的可以,八个的不能抽象成二分图,所以目测只能用dp来跑,dp[i][j]表示的是第i行j状态的最优,具体看 ...
- C#-web Post/Get
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- [CTF]栅栏密码
[CTF]栅栏密码 --------------------- 作者:adversity` 来源:CSDN 原文:https://blog.csdn.net/qq_40836553/articl ...
- Day003 包机制
包机制 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间. 包语句的语法格式为: package pkg1[.pkg2[.pkg3....]]; 一般利用公司的域名倒置作为包名; 例如: ...
- typecho+宝塔搭建
在这个互动视频中很详细的讲解到了 https://www.bilibili.com/video/BV1o4411r7x5?spm_id_from=pageDriver
- 狂神说Elasticsearch7.X学习笔记整理
Elasticsearch概述 一.什么是Elasticsearch? Lucene简介 Lucene是一套用于全文检索和搜寻的开源程序库,由Apache软件基金会支持和提供 Lucene提供了一个简 ...
- springboot开发浅谈 2021/05/11
学习了这么久,本人希望有时间能分享一下,这才写下这篇浅谈,谈谈软件,散散心情. 这是本人的博客园账号,欢迎关注,一起学习. 一开始学习springboot,看了好多网站,搜了好多课程.零零落落学了一些 ...
- (9)MySQL进阶篇SQL优化(InnoDB锁-记录锁)
1.概述 InnoDB行锁是通过给索引上的索引项加锁来实现的,这一点MySQL与Oracle不同,后者是通过在数据块中对相应数据行加锁来实现的.InnoDB这种行锁实现特点意味着:只有通过索引条件检索 ...