HarmonyOS那些事儿
HarmonyOS那些事儿
一、鸿蒙操作系统的概述
- 开发背景
早在2012年任正非与华为2012实验室的专家座谈时就提出,华为要自研操作系统做备份,哪怕几十年都用不上也一定要做,否则一旦操作系统“断粮”对华为就是数千亿美元的损失。2019年,美国引渡孟晚舟。同年,谷歌终止向华为授权GMS服务,企业与国家使命的战争打响。
- 开发历史
2012年,正式提出开发鸿蒙系统。
2019年,发布鸿蒙操作系统,实行代码开源。
2020年,发布鸿蒙系统2.0版本,同年,开放Beta测试版本。
2021年,Harmony OS应用开发网站上线。同年6月,华为正式举办鸿蒙操作系统发布会,手机系统陆续更新。
- 需求
摆脱西方技术垄断,带动中国信息技术产业发展。
- 应用场景
鸿蒙操作系统致力于全场景式OS,着重强调万物互联,包括电器、交通工具、手机等智能设备。
二、关于鸿蒙系统是否套壳的争议
- 什么是创新
基于安卓的ASOP代码是鸿蒙是否套壳的主要争议。但根据华为所说,在ASOP这个项目里,任何机构和企业都有义务为开源社区贡献代码,也能够使用和下载开源代码,并基于开源项目做二次开发。所以ASOP的代码并不全是谷歌写的,华为也是ASOP的重要贡献者。由此,我认为代码ASOP的相同不算是套壳。同时,由于安卓用户广泛并且APP开发者众多,如果一时全部更改代码,对于新的鸿蒙系统是个莫大的挑战,对于华为经济也有较大的冲击。
什么是创新?我所认为的,创新就是在旧事、旧物、旧理论上的不断改进和提升,使之在某些特征方面焕然一新,有如沐春风之感。或是用途变广,或是视听升级,或是耳目一新。无论是何种类型的创新,参考或引用无法避免。我们应当承认创新不是创造,创新是旧的故事写下新的篇章。原创、真实、价值,是我们创新路上要不断追求的目标。
- 代码复用与创新的关系
计算机已经经过几十年的发展,包装好的代码数不胜数。科技的发展与计算机密不可分,已经得到的成果我们应该加以利用,然后再其基础上更好的发展。就像站在巨人的肩膀上看世界,我们能看的更远。代码复用和创新同样如此,基于已有的代码,我们可以发展更加有用的工具,功能在原有的基础上叠加。现在的超级APP就类似与这个概念,在一个应用上,我们可以使用相关的众多软件,这是众多代码的总和。
三、代码风格分析
我喜欢长得好看的人(起码就第一印象来说),亦然,代码好看也一定更讨人喜欢。下面给出几例代码风格的分析:
- 摒弃
代码不规范,读者两行泪。try应该和option缩进相同,except和try同级。
import os import sys import subprocess from PyInquirer import prompt def enable_option(file_name): option_list = [] try: with open('.config', 'r') as config_file: for line in config_file: if line.startswith('CONFIG_'): str1 = line.split('=') option_list.append(str1[0][7:]) except IOError: print('No config file') return
- 推荐
排版清晰,缩进有序。如果再加上注释就锦上添花啦!
import os import sys import subprocess def main(argv): if len(argv) != 3: # this is called by build system, must has 3 args. print("argv count error, return!") return path = argv[1] folder = os.path.exists(path) if not folder: os.makedirs(path) print("make folder OK") else: print("folder already existed") symlink_path = argv[2] src_path = os.path.abspath(path) print("skia path is : " + src_path) dst_path = os.path.abspath(symlink_path) print("symlink path is: " + dst_path) subprocess.run(['ln', '-s', dst_path, src_path]) if __name__ == '__main__': main(sys.argv)
嚯哗!休息!!!
2021-09-10 10:41:39