一種Android應(yīng)用的項(xiàng)目分層方法
【技術(shù)領(lǐng)域】
[000? ]本發(fā)明涉及軟件開(kāi)發(fā)技術(shù)領(lǐng)域,具體涉及一種Android應(yīng)用的項(xiàng)目分層方法。
【背景技術(shù)】
[0002]在Android應(yīng)用項(xiàng)目的開(kāi)發(fā)過(guò)程中,項(xiàng)目的分層攸關(guān)重要。慣常的分層方法是基于An droid組件的方式進(jìn)行劃分。這種分層方式使作為四大組件之一的Acti vity類(lèi)肩負(fù)著視圖處理、業(yè)務(wù)邏輯處理和數(shù)據(jù)請(qǐng)求等多種業(yè)務(wù)。隨著功能的增加,Activity類(lèi)變得越來(lái)越臃月中,模塊間代碼的耦合程度過(guò)高,有違軟件開(kāi)發(fā)中的高內(nèi)聚低耦合準(zhǔn)側(cè);不僅不利于項(xiàng)目做單元測(cè)試,而且項(xiàng)目維護(hù)成本高昂。同時(shí),基于組件方式的項(xiàng)目分層難以有效地進(jìn)行開(kāi)發(fā)人員分工,導(dǎo)致開(kāi)發(fā)效率低下。
【發(fā)明內(nèi)容】
[0003]本發(fā)明解決的技術(shù)問(wèn)題在于提供一種Android應(yīng)用的項(xiàng)目分層方法,解決項(xiàng)目中使用基于Android組件的方式進(jìn)行項(xiàng)目分層導(dǎo)致的開(kāi)發(fā)效率低,項(xiàng)目維護(hù)成本高和模塊間代碼耦合度高等一系列問(wèn)題。
[0004]本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案是:
[0005]所述的方法是通過(guò)分析項(xiàng)目各模塊頁(yè)面的功能,將Activity中的視圖邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)請(qǐng)求邏輯分離;同時(shí)透過(guò)事件分發(fā)層的事件總線機(jī)制處理業(yè)務(wù)邏輯層與數(shù)據(jù)層之間的事件和數(shù)據(jù)傳遞。
[0006]所述的方法包括如下步驟:
[0007]第I步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的視圖邏輯;
[0008]第2步、建立視圖層,創(chuàng)建相應(yīng)的活動(dòng)類(lèi),將頁(yè)面的視圖邏輯封裝成具體的視圖方法;
[0009]第3步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的業(yè)務(wù)邏輯;
[0010]第4步、建立業(yè)務(wù)邏輯層,創(chuàng)建業(yè)務(wù)類(lèi),將頁(yè)面的業(yè)務(wù)邏輯封裝成具體的業(yè)務(wù)方法;
[0011]第5步、建立活動(dòng)類(lèi)與業(yè)務(wù)類(lèi)的依賴關(guān)系,在活動(dòng)類(lèi)中創(chuàng)建對(duì)應(yīng)的業(yè)務(wù)類(lèi)對(duì)象,業(yè)務(wù)類(lèi)對(duì)象持有活動(dòng)類(lèi)對(duì)象的引用;
[0012]第6步、建立事件分發(fā)層,根據(jù)頁(yè)面的視圖邏輯與業(yè)務(wù)邏輯,整理頁(yè)面的事件列表,建立相應(yīng)的頁(yè)面事件類(lèi);
[0013]第7步、根據(jù)頁(yè)面的數(shù)據(jù)元素,創(chuàng)建頁(yè)面數(shù)據(jù)實(shí)體類(lèi);
[0014]第8步、建立數(shù)據(jù)層,創(chuàng)建頁(yè)面的數(shù)據(jù)模型類(lèi),封裝頁(yè)面數(shù)據(jù)的獲取方法;
[0015]第9步、編寫(xiě)各個(gè)層的單元測(cè)試用例,確保每個(gè)測(cè)試用例都能測(cè)試通過(guò)。本發(fā)明的有益效果是:有效地提高的了項(xiàng)目開(kāi)發(fā)人員的分工,降低項(xiàng)目的維護(hù)成本,促進(jìn)功能模塊間的解耦,方便進(jìn)行單元測(cè)試。
【附圖說(shuō)明】
[0016]下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說(shuō)明:
[0017]圖1為本發(fā)明項(xiàng)目結(jié)構(gòu)圖;
[0018]圖2為本發(fā)明操作流程圖。
【具體實(shí)施方式】
[0019]見(jiàn)附圖1、2所示,本發(fā)明以安裝Linux系統(tǒng)的開(kāi)發(fā)電腦為例;進(jìn)行具體說(shuō)明。本發(fā)明通過(guò)分析項(xiàng)目各模塊頁(yè)面的功能,將Activity中的視圖邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)請(qǐng)求邏輯分離;同時(shí)透過(guò)事件分發(fā)層的事件總線機(jī)制處理業(yè)務(wù)邏輯層與數(shù)據(jù)層之間的事件和數(shù)據(jù)傳遞,從而實(shí)現(xiàn)項(xiàng)目的分層。
[0020]具體包括如下步驟:
[0021]第I步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的視圖邏輯;
[0022]第2步、建立視圖層,創(chuàng)建相應(yīng)的活動(dòng)類(lèi),將頁(yè)面的視圖邏輯封裝成具體的視圖方法;
[0023]第3步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的業(yè)務(wù)邏輯;
[0024]第4步、建立業(yè)務(wù)邏輯層,創(chuàng)建業(yè)務(wù)類(lèi),將頁(yè)面的業(yè)務(wù)邏輯封裝成具體的業(yè)務(wù)方法;
[0025]第5步、建立活動(dòng)類(lèi)與業(yè)務(wù)類(lèi)的依賴關(guān)系,在活動(dòng)類(lèi)中創(chuàng)建對(duì)應(yīng)的業(yè)務(wù)類(lèi)對(duì)象,業(yè)務(wù)類(lèi)對(duì)象持有活動(dòng)類(lèi)對(duì)象的引用;
[0026]第6步、建立事件分發(fā)層,根據(jù)頁(yè)面的視圖邏輯與業(yè)務(wù)邏輯,整理頁(yè)面的事件列表,建立相應(yīng)的頁(yè)面事件類(lèi);
[0027]第7步、根據(jù)頁(yè)面的數(shù)據(jù)元素,創(chuàng)建頁(yè)面數(shù)據(jù)實(shí)體類(lèi);
[0028]第8步、建立數(shù)據(jù)層,創(chuàng)建頁(yè)面的數(shù)據(jù)模型類(lèi),封裝頁(yè)面數(shù)據(jù)的獲取方法;
[0029]第9步、編寫(xiě)各個(gè)層的單元測(cè)試用例,確保每個(gè)測(cè)試用例都能測(cè)試通過(guò)。
【主權(quán)項(xiàng)】
1.一種Android應(yīng)用的項(xiàng)目分層方法,其特征在于:所述的方法是通過(guò)分析項(xiàng)目各模塊頁(yè)面的功能,將Activity中的視圖邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)請(qǐng)求邏輯分離;同時(shí)透過(guò)事件分發(fā)層的事件總線機(jī)制處理業(yè)務(wù)邏輯層與數(shù)據(jù)層之間的事件和數(shù)據(jù)傳遞。2.根據(jù)權(quán)利要求1所述的項(xiàng)目分層方法,其特征在于: 所述的方法包括如下步驟: 第I步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的視圖邏輯; 第2步、建立視圖層,創(chuàng)建相應(yīng)的活動(dòng)類(lèi),將頁(yè)面的視圖邏輯封裝成具體的視圖方法; 第3步、根據(jù)模塊頁(yè)面的功能需求,整理頁(yè)面的業(yè)務(wù)邏輯; 第4步、建立業(yè)務(wù)邏輯層,創(chuàng)建業(yè)務(wù)類(lèi),將頁(yè)面的業(yè)務(wù)邏輯封裝成具體的業(yè)務(wù)方法; 第5步、建立活動(dòng)類(lèi)與業(yè)務(wù)類(lèi)的依賴關(guān)系,在活動(dòng)類(lèi)中創(chuàng)建對(duì)應(yīng)的業(yè)務(wù)類(lèi)對(duì)象,業(yè)務(wù)類(lèi)對(duì)象持有活動(dòng)類(lèi)對(duì)象的引用; 第6步、建立事件分發(fā)層,根據(jù)頁(yè)面的視圖邏輯與業(yè)務(wù)邏輯,整理頁(yè)面的事件列表,建立相應(yīng)的頁(yè)面事件類(lèi); 第7步、根據(jù)頁(yè)面的數(shù)據(jù)元素,創(chuàng)建頁(yè)面數(shù)據(jù)實(shí)體類(lèi); 第8步、建立數(shù)據(jù)層,創(chuàng)建頁(yè)面的數(shù)據(jù)模型類(lèi),封裝頁(yè)面數(shù)據(jù)的獲取方法; 第9步、編寫(xiě)各個(gè)層的單元測(cè)試用例,確保每個(gè)測(cè)試用例都能測(cè)試通過(guò)。
【專(zhuān)利摘要】本發(fā)明涉及軟件開(kāi)發(fā)技術(shù)領(lǐng)域,具體涉及一種Android應(yīng)用的項(xiàng)目分層方法。本發(fā)明所述的方法是通過(guò)分析項(xiàng)目各模塊頁(yè)面的功能,將Activity中的視圖邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)請(qǐng)求邏輯分離;同時(shí)透過(guò)事件分發(fā)層的事件總線機(jī)制處理業(yè)務(wù)邏輯層與數(shù)據(jù)層之間的事件和數(shù)據(jù)傳遞,從而達(dá)到項(xiàng)目分層。本發(fā)明有效地提高的了項(xiàng)目開(kāi)發(fā)人員的分工,降低項(xiàng)目的維護(hù)成本,促進(jìn)功能模塊間的解耦,方便進(jìn)行單元測(cè)試;可以用于Android應(yīng)用的項(xiàng)目分層。
【IPC分類(lèi)】G06F11/36
【公開(kāi)號(hào)】CN105573914
【申請(qǐng)?zhí)枴緾N201510939715
【發(fā)明人】秦峰秀, 徐震宇, 季統(tǒng)凱
【申請(qǐng)人】國(guó)云科技股份有限公司
【公開(kāi)日】2016年5月11日
【申請(qǐng)日】2015年12月15日