自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何優(yōu)雅地開(kāi)發(fā)HarmonyOS APP應(yīng)用

開(kāi)發(fā) OpenHarmony
研究HarmonyOS有一段時(shí)間了,今天主要結(jié)合自己多年的項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn)和各種技術(shù)棧結(jié)合HarmonyOS APP應(yīng)用開(kāi)發(fā)講解下如何優(yōu)雅地進(jìn)行開(kāi)發(fā)和積累。

研究HarmonyOS有一段時(shí)間了,今天主要結(jié)合自己多年的項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn)和各種技術(shù)棧結(jié)合HarmonyOS APP應(yīng)用開(kāi)發(fā)講解下如何優(yōu)雅地進(jìn)行開(kāi)發(fā)和積累。

一、挖掘項(xiàng)目需求或者做項(xiàng)目移植,并且做技術(shù)分析,與HarmonyOS APP應(yīng)用開(kāi)發(fā)相關(guān)知識(shí)點(diǎn)進(jìn)行結(jié)合。

這里最簡(jiǎn)潔的方式就是用一個(gè)腦圖規(guī)劃下就好,我這里就拿我之前發(fā)布的在線教育APP的項(xiàng)目為例進(jìn)行介紹下:


二、創(chuàng)建項(xiàng)目工程,采用一個(gè)Project多個(gè)Moudule的方式進(jìn)行開(kāi)發(fā),并且使用git進(jìn)行托管,開(kāi)源項(xiàng)目建議使用gitee

下面還是拿我的一個(gè)項(xiàng)目進(jìn)行舉例:


我這里一個(gè)項(xiàng)目Project下創(chuàng)建了4個(gè)Module,默認(rèn)的entry下并沒(méi)有編寫(xiě)業(yè)務(wù)代碼,js命名的Module下主要做的FA功能開(kāi)發(fā),java命名的Module只要做的PA部分功能開(kāi)發(fā),而roundimage是我編寫(xiě)的自定義組件。做好Module的劃分,后期更方便我們進(jìn)行代碼維護(hù)和功能復(fù)用,比如自定義組件這塊任何一個(gè)其它工程都可以直接拉過(guò)去用。

三、功能模塊實(shí)現(xiàn)的流程思路

1、先處理主要業(yè)務(wù)的功能,開(kāi)始進(jìn)行UI開(kāi)發(fā)的時(shí)候,采用靜態(tài)數(shù)據(jù)進(jìn)行渲染,這里可以將靜態(tài)數(shù)據(jù)生成封裝到一個(gè)方法之中,后期可以直接通過(guò)切換方法調(diào)用換成云端數(shù)據(jù)對(duì)接或者PA端數(shù)據(jù)對(duì)接,如下是我工程里編寫(xiě)的代碼截圖:



2、需要接入第三方SDK或者AI引擎的留在最后單獨(dú)集成調(diào)試,比如掃碼功能接入、直播功能接入、語(yǔ)音識(shí)別等。

3、每個(gè)小功能完成之后都要可維可測(cè),并且commit push到git平臺(tái)。

4、對(duì)業(yè)務(wù)流程較復(fù)雜的業(yè)務(wù)做好時(shí)序圖進(jìn)行記錄。

四、養(yǎng)成良好的編程規(guī)范習(xí)慣以及運(yùn)用設(shè)計(jì)模式,即使沒(méi)有詳細(xì)設(shè)計(jì)文檔也可以快速讀完項(xiàng)目代碼

1、劃分合理的包結(jié)構(gòu),包名、類名、方法名、變量名等標(biāo)識(shí)符要顧名思義。


2、對(duì)關(guān)鍵方法、變量和步驟添加注釋說(shuō)明


3、對(duì)常量進(jìn)行統(tǒng)一定義,避免出現(xiàn)魔鬼數(shù)字和字符串


4、每個(gè)方法體的內(nèi)容盡量控制在50行以內(nèi),超過(guò)50行可以再進(jìn)行方法封裝和調(diào)用,這樣更方便閱讀代碼。

5、對(duì)Java實(shí)體類的封裝,只需要采用經(jīng)典的getter和setter進(jìn)行封裝,不要嵌入@Data這類侵入性比較強(qiáng)的代碼,這樣是為了更方便在Springboot、Harmony、Android等各類開(kāi)發(fā)中公用一套實(shí)體類代碼,更方便前后端開(kāi)發(fā)交互和協(xié)調(diào)。

6、設(shè)計(jì)模式的合理運(yùn)用

比如我這里項(xiàng)目有靜態(tài)版的、PA版的、云端版的,那么可以合理的封裝設(shè)計(jì),最后采用一個(gè)配置項(xiàng)進(jìn)行一鍵切換。

以上是我結(jié)合多年前端、后端、架構(gòu)設(shè)計(jì)等項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn)總結(jié)的一些經(jīng)驗(yàn),希望能夠幫助大家快速get鴻蒙開(kāi)發(fā)技能。

©著作權(quán)歸作者和HarmonyOS技術(shù)社區(qū)共同所有,如需轉(zhuǎn)載,請(qǐng)注明出處,否則將追究法律責(zé)任

想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com/#zz

[[376685]]

 

責(zé)任編輯:jianghua 來(lái)源: 鴻蒙社區(qū)
相關(guān)推薦

2021-01-28 14:53:19

PHP編碼開(kāi)發(fā)

2017-05-22 11:09:53

KotlinAndroid

2019-11-04 14:20:47

APP版本移動(dòng)端命名

2021-03-24 10:20:50

Fonts前端代碼

2021-01-20 08:26:16

中間件技術(shù)spring

2024-11-13 16:37:00

Java線程池

2020-03-15 13:57:08

開(kāi)發(fā)薪水技術(shù)

2020-03-26 11:04:00

Linux命令光標(biāo)

2021-05-12 22:07:43

并發(fā)編排任務(wù)

2022-05-13 21:20:23

組件庫(kù)樣式選擇器

2022-05-24 06:07:48

JShack用戶代碼

2024-04-24 12:34:08

Spring事務(wù)編程

2021-09-08 08:34:37

Go 文檔Goland

2020-10-22 10:15:33

優(yōu)化Windows電腦

2020-12-08 08:08:51

Java接口數(shù)據(jù)

2018-08-20 10:40:09

Redis位圖操作

2023-02-13 14:37:13

開(kāi)發(fā)web瀏覽器

2020-09-25 11:30:20

Java判空代碼

2020-11-06 08:13:03

服務(wù)器Nodejs客戶端

2020-07-09 10:15:55

空值Bug語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)