HarmonyOS 3.0.0開發者預覽版全新發布

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2021年10月22日在華爲開發者大會HDC.Together 2021 主題演講上,我們發佈了HarmonyOS 3.0.0開發者預覽版,主要內容包括:Harmony設計系統、ArkUI 3.0、ArkCompiler 3.0、DevEco Studio 3.0和TS/JS API 。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"其中,HarmonyOS的UI開發框架從以Java爲主要編程語言的命令式UI框架演進爲以TypeScript(簡稱TS)/JavaScript(簡稱JS)爲主要編程語言的聲明式UI框架(ArkUI 3.0)。同時,ArkCompiler 3.0增加了對TS/JS語言的支持,HarmonyOS SDK新增了6000+的TS/JS API,支持TS語言開發富媒體應用。未來,TS/JS語言在HarmonyOS應用開發中會越來越重要。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"下面,讓我們再來回顧一下HarmonyOS 3.0.0開發者預覽版的關鍵內容吧~","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":3},"content":[{"type":"text","text":"一、Harmony設計系統","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Harmony設計系統,綜合考慮人因、設備和環境等因素,爲跨端應用界面設計提供完備的設計規範、便捷的設計工具、以及豐富的設計資源,方便開發者創作出更優秀的設計。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":3},"content":[{"type":"text","text":"二、ArkUI 3.0","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"ArkUI 3.0是一套構建HarmonyOS應用界面的聲明式UI開發框架。它通過極簡的UI信息描述語法、豐富的UI組件和動效,以及實時界面預覽能力,幫助您提升HarmonyOS應用界面開發效率。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":12}},{"type":"strong","attrs":{}}],"text":"ArkUI 3.0的關鍵特性如下:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"1. 從以Java爲主要編程語言的命令式UI框架,演進爲以TS/JS爲主要編程語言的聲明式UI框架,生產效率提高30%。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/24/244a5152faf6868f9fddaf641abb998e.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖1 UI框架演進","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"爲何UI開發框架會發生這樣的演進?從開發模式方面來看,聲明式比命令式具備更直觀更簡潔的能力,能進一步提升開發效率;從語言方面來看,TS/JS具備了廣泛的生態以及更強的靈活性。根據RedMonk 2021年Q1 編程語言排名,JS語言綜合排名第一,並且是目前全球開發者中使用最多的語言。JS語言擁有非常強大的生態社區,學習資源、三方庫和工具資源非常豐富。相比靜態類型開發語言(比如Java),JS因爲動態類型和類腳本語言的特點,開發類似功能的應用時,JS代碼一般行數更少,開發效率更高。TS是JS的一個超集,有效地提升了JS開發大型工程的便利性和可維護性。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"2. 提供極簡UI開發語法和組件,提高跨設備應用UI開發效率。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/74/74401832af56db58d3933193d00ba28b.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖2 ArkUI的高效率","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"ArkUI 3.0擁有極簡的UI信息描述語法、豐富的UI組件和高效跨端開發能力,對比傳統的應用界面開發,代碼量減少30%以上。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"3. 通過針對聲明式的前後端一致化的渲染優化設計,進一步提升應用性能體驗。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/a7/a721669d590374d4358a39c7dab1f46c.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖3 ArkUI的高性能","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"ArkUI 3.0通過扁平化統一渲染和並行流水線技術,保證應用性能體驗和安卓原生應用體驗不相上下,在典型的複雜場景下,內存還可降低20%。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":3},"content":[{"type":"text","text":"三、ArkCompiler 3.0","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"ArkCompiler是華爲自研的統一編程平臺,包含編譯器、工具鏈、運行時等關鍵部件,支持高級語言在多種芯片平臺的編譯與運行,並支撐應用和服務運行在手機、個人電腦、平板、電視、汽車和智能穿戴等多種設備上的需求。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/a6/a6d1d450f840be66697159211c93abdf.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖4 ArkCompiler 3.0原理圖","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"本次推出的ArkCompiler 3.0包含以下關鍵特性:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"1. 前端編譯器支持將多種高級語言(包括JS、TS和Java)編譯成統一的字節碼文件,屏蔽語言的差異,提升運行效率和程序啓動性能。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"2. 提供多種端側執行模式(解釋器、JIT編譯器和AOT編譯器),形成結合設備和應用特徵的多層次組合運行策略,滿足不同設備硬件規格。","attrs":{}}]},{"type":"bulletedlist","content":[{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"解釋器:啓動快,執行性能一般,內存佔用小。","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"JIT編譯器:啓動需要預熱,執行性能高,內存佔用較高。","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"AOT編譯器:啓動快,執行性能高,內存佔用高。","attrs":{}}]}]}],"attrs":{}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在低端IoT設備上,ArkCompiler 3.0支持純解釋器的執行模式,以滿足小設備的內存限制條件。在高端設備上,ArkCompiler 3.0支持解釋器配合AOT和JIT編譯器的執行模式,對大部分應用代碼使用AOT編譯器編譯,使得程序一開始就可以運行在高質量的優化代碼上,獲得最好的執行性能。在其它設備上,則根據設備的硬件條件限制來選擇策略,設定高頻使用需要AOT編譯的代碼範圍,其它代碼則依靠解釋器配合JIT編譯器運行,使得應用執行性能能夠得到最大化。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"3. ArkCompiler 3.0特別對TS/JS做了針對性優化規劃,目標是提升執行性能1倍。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":3},"content":[{"type":"text","text":"四、DevEco Studio 3.0","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"HUAWEI DevEco Studio是面向全場景多設備,提供一站式的原子化服務&HarmonyOS應用開發平臺。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"DevEco Studio 3.0爲開發、調試和測試三個階段都提供了更多功能來提升跨端應用開發效率。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"1. 開發階段,DevEco Studio 3.0提供的以下功能幫助開發者實現跨端高效編碼。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 支持ArkUI3.0框架,提供eTS超級終端工程模板,支持開發者一鍵創建跨端應用工程。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 提供實時雙向預覽能力,開發者在編寫代碼的同時可以便捷調整UI界面。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/85/850fb92369f9c7fff3bdf7bb132f8567.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖5 實時預覽","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 一次開發,多端部署,支持同一個工程在手機、平板、車機等多種設備上運行。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/f1/f15740973321b93ddf35010d2697ca5c.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖6 一次開發,多端部署","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"2. 調試階段,DevEco Studio 3.0提供以下功能幫助開發者降低跨端分佈式調測門檻。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 提供分佈式遠程模擬器,降低開發者跨端應用調試的成本。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 提供可視化跨設備網絡連接和內存堆棧功能,降低開發者跨端應用調試的難度。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/08/0841f6773f9ff7de5bba63b1ab8fbfaf.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖7 跨端分佈式調測","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","marks":[{"type":"strong","attrs":{}}],"text":"3. 集成測試階段,DevEco Studio 3.0的雲端服務平臺DevEco Service提供遠程實驗室和集成測試服務“DevEco Testing”,幫助開發者雲端一鍵式完成跨端應用集成測試。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ 遠程實驗室提供7*24小時華爲真機環境,涵蓋華爲1+8全類型真機設備,免除購置和維護成本,解決開發者在測試應用時無設備或設備類型不全的問題。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"■ DevEco Testing在遠程實驗室的基礎上,爲開發者提供一鍵式跨端應用集成測試服務,覆蓋兼容性、穩定性、性能、功耗、UX測試、安全等測試。","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/04/041a34397bc846ec8adf29e262356669.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖8 DevEco Service雲端服務平臺","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"集成測試服務DevEco Testing鏈接:","attrs":{}},{"type":"link","attrs":{"href":"https://devecostudio.huawei.com/","title":"","type":null},"content":[{"type":"text","text":"https://devecostudio.huawei.com/","attrs":{}}]}]},{"type":"heading","attrs":{"align":null,"level":3},"content":[{"type":"text","text":"五、TS/JS API","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"截止HDC.Together 2021主題演講會當天,Harmony SDK新增6000+ TS/JS API,支持跨端應用高效開發。涵蓋以下能力:","attrs":{}}]},{"type":"bulletedlist","content":[{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"分佈式系統服務:跨端服務拉起、跨端服務調用、跨端服務遷移等","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"多媒體能力:錄音、播放、圖片解碼等","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"多線程併發能力:Workers多線程能力、線程間數據共享等","attrs":{}}]}]},{"type":"listitem","attrs":{"listStyle":null},"content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"聲明式UI能力:MVVM編程模型、豐富UI組件、動效能力、原子佈局能力等","attrs":{}}]}]}],"attrs":{}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"當前,TS/JS API 支持富媒體類應用場景開發,比如圖庫類、日曆類等。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"我們計劃在2022年提供增強UI組件和增強分佈式能力的TS/JS API版本,全面支持華爲超級終端下三方重度應用場景開發,比如諮詢類、影音類、社交類、購物類等。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"最後,我們來看看HarmonyOS 3.0.0的版本特性路標:","attrs":{}}]},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/e1/e13e8e96a31f707edf7be8d3a7ea1d45.webp","alt":null,"title":"","style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":"","fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","marks":[{"type":"size","attrs":{"size":9}}],"text":"圖9 版本特性路標","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"以上就是HarmonyOS 3.0.0開發者預覽版發佈內容。歡迎各位開發者小夥伴們到HarmonyOS官網下載工具和資源包,提前嚐鮮HarmonyOS 3.0.0的新特性,感謝您一路陪伴HarmonyOS的成長!","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"更多HarmonyOS 3.0.0開發特性和路標詳細信息,請訪問官網HarmonyOS 3.0.0專題頁:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"link","attrs":{"href":"https://developer.harmonyos.com/cn/develop/harmonyos-sdk","title":"","type":null},"content":[{"type":"text","text":"https://developer.harmonyos.com/cn/develop/harmonyos-sdk","attrs":{}}]}]}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章