一、IDE工具層面
DevEco Studio作為專門用于開發(fā)鴻蒙操作系統(tǒng)(HarmonyOS)的應(yīng)用程序的集成開發(fā)環(huán)境(IDE),提供一個清晰、直觀的用戶界面,使得開發(fā)人員可以更容易地進行編碼、調(diào)試和測試我們的應(yīng)用。新的版本里,在調(diào)試和測試方面做了很大的提升,尤其對NDK,使用C或者C++語言實現(xiàn)應(yīng)用的關(guān)鍵功能的開發(fā)項目,在跨語言調(diào)用上,不管ArkTS調(diào)用C和C++,還是反過來在C和C++上調(diào)用ArkTS,它能很容易找到內(nèi)存泄漏的點,在調(diào)優(yōu)方面,將專家級調(diào)優(yōu)經(jīng)驗,開發(fā)成工具,以泳道圖的方式直觀展現(xiàn),通過組件耗時情況,可以準(zhǔn)確定位到卡頓的點,進而優(yōu)化!
二、SDK方面
作為支撐鴻蒙原生應(yīng)用開發(fā)的技術(shù)源動力,HarmonyOS SDK將系統(tǒng)級能力全面對外開放,覆蓋了應(yīng)用框架、應(yīng)用服務(wù)、系統(tǒng)、媒體、圖形、AI六大領(lǐng)域的開發(fā)能力。
1、應(yīng)用框架(Application Framework):
- 提供基礎(chǔ)的應(yīng)用開發(fā)框架,包含了應(yīng)用生命周期管理、用戶界面渲染、事件處理等基本功能。
- 包括Ability Kit、ArkUI、ArkTS等,這些工具和庫用于構(gòu)建應(yīng)用程序的基本結(jié)構(gòu)。
2、應(yīng)用服務(wù)(Application Services):
- 為應(yīng)用程序提供了一系列的服務(wù),以增強其功能和用戶體驗。
- 包含Account Kit、App Linking Kit、Message Kit等,用于實現(xiàn)賬戶管理、數(shù)據(jù)同步、消息推送等服務(wù)。
3、系統(tǒng)(System):
- 涉及操作系統(tǒng)級別的服務(wù)和功能,比如網(wǎng)絡(luò)、安全性、設(shè)備硬件控制等。
- 包括Network Kit、Security Kit、System Service Kit等,提供了網(wǎng)絡(luò)連接、數(shù)據(jù)加密、系統(tǒng)服務(wù)等功能。
4、媒體(Media):
5、圖形(Graphics):
- 提供2D/3D圖形渲染、動畫、和視覺效果的工具。
- 包括Canvas Kit、Graphic Accelerate Kit、Vector Graphic Kit等,幫助開發(fā)者創(chuàng)建圖形豐富的用戶界面和動畫效果。
6、AI(Artificial Intelligence):
- 包含人工智能功能,如機器學(xué)習(xí)、語音識別、圖像識別等。
- 包括AI Engine、Machine Learning Kit、HiAI Foundation等,使應(yīng)用能夠?qū)崿F(xiàn)智能化的操作和處理。
三、Next版鴻蒙原生應(yīng)用新特性:更純凈、更智能、更精致、更易用
1、更純凈
首先,利用Core File Kit, L ocation Kit等安全控件,可以免用戶授權(quán)使用能力,做過前面版本的鴻蒙應(yīng)用開發(fā)的小伙伴們都有體驗,訪問圖片/視頻、音頻、文件、聯(lián)系人、相機、電話、頭像、掃碼等等敏感信息的時候,都必須需要獲得用戶的授權(quán),需要用戶手動點擊授權(quán)按鈕,程序才能繼續(xù)進行后面操作,但這點在Next版本后的鴻蒙應(yīng)用開發(fā)改善了,比如用戶在應(yīng)用里保存圖片,只要點擊“保存”,就默認(rèn)用戶同意授權(quán)了,可直接保存到系統(tǒng)相冊,無需授予應(yīng)用任何權(quán)限,應(yīng)用無法越過用戶訪問任何公共文件,即保證了安全,也讓用戶操作不被中斷,更流暢絲滑。另外,Account Kit全局支持未成年保護模式,所有應(yīng)用自動生效,場景1:設(shè)備給未成年人專用,在設(shè)備登錄未成年帳號,場景2:家長設(shè)備給未成年人臨時使用,家長設(shè)置未成年使用,在上面兩種場景下打開相關(guān)應(yīng)用,默認(rèn)進入青少年模式,進入這個模式后,很多不應(yīng)該小朋友使用的app都將用不了,外面可以根據(jù)設(shè)置指定哪些能給用,哪些不能給用,這些開發(fā)賦能,讓鴻蒙操作學(xué)堂環(huán)境更純凈!
2、更智能
通過Media Library Kit控件,手機可以智能推薦用戶要選擇的照片,比如需要上傳身份證的時候,打開相冊上傳,可以通過輸入“身份證”這樣的關(guān)鍵字,鴻蒙系統(tǒng)會自動圖片識別,自動篩選出身份證的圖片供選擇,不用我們自己去找!在比如Push Kit控件,讓同一事件推送的多個消息自動聚合在一起,讓用戶高效獲取價值信息,提升用戶的體驗。
3、更精致
ArkUI提供的控件,提升了空間層次感,模擬真實世界的空間層次,提供精致細(xì)膩的視效動效,使能鴻蒙原生應(yīng)用高端精致。
4、更易用
使用 Live View Kit (實況窗),打造鴻蒙原生應(yīng)用全新體驗,這個實況窗,實質(zhì)就是讓展示信息的地方,更加多樣化了,比如,實況窗可將打車、外賣配送等進展呈現(xiàn)在熄屏、鎖屏、通知中心、狀態(tài)欄,桌面卡片等多個入口,無論手機處于那個狀態(tài),用戶只需掃一眼即可了解最新打車、外賣進度,無需反復(fù)打開應(yīng)用查看,減少用戶等待過程的焦慮,讓手機更加易用。又比如,使用Scan Kit 軟硬芯協(xié)同,提供鴻蒙原生應(yīng)用統(tǒng)一的、系統(tǒng)級的掃碼能力,可以把掃碼圖標(biāo)常駐桌面,打開掃描界面不用去找對應(yīng)的app,掃描時系統(tǒng)自動識別是什么app的二維碼,自動對接到對應(yīng)app,讓手機使用更方便。
四、在開發(fā)層面
1、應(yīng)用架構(gòu)上采用三層模式
因為鴻蒙是針對多設(shè)備的操作系統(tǒng),所以開發(fā)工程上,建議把基本不需要修改的代碼放到工程的公共能力基礎(chǔ)層,然后根據(jù)各種設(shè)備的不同,拆分出很多特性代碼模塊,放在特性層,最上面的一層是針對不同設(shè)備的皮膚,有可能隨時改變的代碼,放在產(chǎn)品層。整體上就把項目從下到上工程劃分為,公共基礎(chǔ)能力層,特性層以及產(chǎn)品層。
2、一次開發(fā),多端部署
隨著終端設(shè)備形態(tài)日益多樣化,分布式技術(shù)逐漸打破單一硬件邊界,一個應(yīng)用或服務(wù),可以在不同的硬件設(shè)備之間隨意調(diào)用、互助共享,讓用戶享受無縫的全場景體驗。而作為應(yīng)用開發(fā)者,廣泛的設(shè)備類型也能為應(yīng)用帶來廣大的潛在用戶群體。但是如果一個應(yīng)用需要在多個設(shè)備上提供同樣的內(nèi)容,則需要適配不同的屏幕尺寸和硬件,開發(fā)成本較高。Harmony 系統(tǒng)面向多終端提供了“一次開發(fā),多端部署”(簡稱為“一多”)的能力,讓開發(fā)者可以基于一種設(shè)計,高效構(gòu)建多端可運行的應(yīng)用。說的直白一點,就是以前我們可能會針對不同設(shè)備,開發(fā)不同的app來支持,pc端一套pc代碼,移動端對應(yīng)一套移動端代碼,手表又會重新開發(fā)手表的對應(yīng)的程序,再不濟,也是一套應(yīng)用里邊含有幾套對應(yīng)不同設(shè)備的獨立的UI代碼,但是現(xiàn)在鴻蒙系統(tǒng)上做應(yīng)用開發(fā)不用這門麻煩了,“一多”就非常完美解決這個問題,它能做到開發(fā)階段應(yīng)考慮不同類型設(shè)備間最大程度的復(fù)用代碼,整個代碼工程最終構(gòu)建出一個APP包,但這個APP包可以分發(fā)適配到各種不同設(shè)備中正常運行。
3、UI框架采用MVVM模式
ArkUI采取MVVM = Model + View + ViewModel模式:
- (1)Model層:存儲數(shù)據(jù)和相關(guān)邏輯的模型。它表示組件或其他相關(guān)業(yè)務(wù)邏輯之間傳輸?shù)臄?shù)據(jù)。Model是對原始數(shù)據(jù)的進一步處理。
- (2)View層:在ArkUI中通常是@Components修飾組件渲染的UI。
- (3)ViewModel層:在ArkUI中,ViewModel是存儲在自定義組件的狀態(tài)變量、LocalStorage和AppStorage中的數(shù)據(jù)。 采用MVVM(Model-View-ViewModel)
模式進行用戶界面(UI)設(shè)計和開發(fā),具有以下好處:
- (1)提高可維護性:MVVM模式通過分離視圖(UI)和業(yè)務(wù)邏輯(Model),使得代碼更易于維護和擴展。ViewModel充當(dāng)視圖和模型之間的中介,減少了視圖和模型之間的依賴。
- (2)增強可測試性:由于業(yè)務(wù)邏輯被從視圖中分離出來,因此可以獨立于UI對業(yè)務(wù)邏輯進行測試,提高測試的便利性和覆蓋面。
- (3)提升代碼復(fù)用率:ViewModel可以在不同的視圖中重用,特別是在復(fù)雜的用戶界面和共享功能中,這樣可以減少重復(fù)的代碼。
- (4)簡化數(shù)據(jù)綁定:MVVM模式允許自動數(shù)據(jù)綁定,這意味著視圖可以直接從ViewModel獲取數(shù)據(jù),反之亦然。這簡化了UI的動態(tài)更新,使得開發(fā)者不必手動操作DOM或監(jiān)聽數(shù)據(jù)變化。
- (5)更好的分工協(xié)作:設(shè)計師可以專注于視圖設(shè)計,而開發(fā)者可以專注于業(yè)務(wù)邏輯,從而使團隊協(xié)作更加高效。
- (6)改善性能:MVVM可以通過優(yōu)化數(shù)據(jù)綁定和狀態(tài)管理來提高應(yīng)用程序的性能,特別是在處理大量動態(tài)數(shù)據(jù)更新的情況下。
- (7)更好的用戶體驗:MVVM支持更豐富的交互設(shè)計,如實時數(shù)據(jù)更新,無需刷新頁面即可響應(yīng)用戶的操作,從而提升用戶體驗。
- (8)減輕UI線程壓力:ViewModel可以在后臺線程中處理數(shù)據(jù)邏輯,從而減少UI線程的工作量,使界面響應(yīng)更加流暢。
審核編輯 黃宇
-
開發(fā)者
+關(guān)注
關(guān)注
1文章
553瀏覽量
16994 -
鴻蒙系統(tǒng)
+關(guān)注
關(guān)注
183文章
2634瀏覽量
66224 -
HarmonyOS
+關(guān)注
關(guān)注
79文章
1967瀏覽量
30035
發(fā)布評論請先 登錄
相關(guān)推薦
評論