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
