從無到有森篷,打造模塊化項目。構(gòu)建一個開箱即用的項目豺型,從 Git 上拉取下來即可直接進(jìn)行開發(fā)仲智,其中涵蓋路由通信、上下拉刷新姻氨、網(wǎng)絡(luò)請求钓辆、事件通知、頂部tab封裝等功能,項目里調(diào)用API為鴻洋大佬的wanAndroidAPI前联。后期將持續(xù)完善功戚,若有不足之處,誠邀各位大佬多提寶貴建議蛀恩,共同進(jìn)步成長疫铜。
為啥要模塊化
在一些公司茂浮,員工可能接手幾年前甚至更久遠(yuǎn)的項目双谆,其架構(gòu)常是所有代碼在一個包中,導(dǎo)致代碼混亂席揽,降低可讀性和可維護(hù)性顽馋。維護(hù)或更新時,開發(fā)人員需在混亂代碼中艱難尋找相關(guān)部分幌羞,耗時耗力且易引入新錯誤寸谜,代碼復(fù)用性也不高。而模塊化架構(gòu)能有效解決這些問題属桦,提高開發(fā)效率和項目質(zhì)量熊痴。
模塊化帶來的好處
將應(yīng)用分解為多個功能模塊,其中每個模塊負(fù)責(zé)執(zhí)行特定的功能聂宾。通過模塊化設(shè)計提高了代碼的可理解性和可復(fù)用性果善,使應(yīng)用的擴(kuò)展和維護(hù)變得更為簡便,同時降低了系統(tǒng)各部分之間的耦合度系谐。
詳細(xì)請看官方應(yīng)用架構(gòu)概述
分層架構(gòu)設(shè)計
模塊化設(shè)計
產(chǎn)品定制層
主要針對跨多種設(shè)備巾陕,目前以設(shè)備類型--手機(jī)phone為主,后續(xù)再迭代其它多種設(shè)備纪他。
基礎(chǔ)特性層
主要針對功能模塊進(jìn)行劃分鄙煤,設(shè)計為HAR模塊,編譯后對應(yīng)HAR包茶袒。比如各個APP底部導(dǎo)航欄有幾個Tab梯刚。
公共能力層
主要針對公共能力層的各子目錄將被編譯成HAR包,而他們只能被產(chǎn)品定制層和基礎(chǔ)特性層所依賴薪寓,不允許存在反向依賴亡资。比如 網(wǎng)絡(luò)請求模塊、公共UI模塊预愤、工具模塊沟于。
應(yīng)用模塊化選型
一般大部分項目可以直接采用代碼架構(gòu) 單HAP+可選(多HSP)+可選(多HAR)
HSP如果是按需加載的那種,比如像支付寶首頁(單車植康、菜鳥等)推薦使用旷太,否則還是推薦HAR。官方也說了,若HSP包和HAR包均能滿足業(yè)務(wù)需求供璧,建議將HSP包改成HAR包存崖。
過多的HSP可能會影響安裝效率和App啟動性能,那么代碼架構(gòu)采用 單HAP+可選(多HAR)睡毒。
大概了解后来惧,讓我們擼起袖子加油干。
本篇先搭建產(chǎn)品定制層
IDE版本為 5.0.3.906演顾,沒有更新的供搀,去官方更新
創(chuàng)建一個項目
? 2. 傻瓜式創(chuàng)建,點(diǎn)Next
3. 這是創(chuàng)建好后的工程目錄钠至,發(fā)現(xiàn)與我們想要的效果不一樣葛虐,我們接著改造.
選中項目,右鍵New棉钧,選Directory屿脐,新建一個名為 products 的目錄
選中 entry 拖入到 products 目錄里
4.產(chǎn)品定制層 這第一步已經(jīng)完成了。后續(xù)如果增加新的設(shè)備宪卿,比如平板的诵、手表、車機(jī)都可以佑钾。
5.項目新增了README.md文件西疤,方便后續(xù)的項目介紹與說明
有興趣的同學(xué)可以點(diǎn)擊查看源碼
gitee:https://gitee.com/jiaojiaoone/explore-harmony-next.git