項(xiàng)目管理步驟
1.需求評(píng)審:必須想盡辦法把整個(gè)需求流程串聯(lián)起來(lái),形成總體認(rèn)識(shí)閉環(huán)
2.接口層評(píng)審:想到每個(gè)場(chǎng)景下,是否缺少字段
3.開(kāi)發(fā)UI和頁(yè)面邏輯:把每個(gè)頁(yè)面所有可能的邏輯都要考慮到
4.假數(shù)據(jù)測(cè)試
5.聯(lián)合調(diào)試
6.測(cè)試上線
架構(gòu)設(shè)計(jì)目標(biāo):
松耦合
可測(cè)試、容易定位問(wèn)題。
可擴(kuò)展
可替換
要寫易刪除,而不易擴(kuò)展的代碼
開(kāi)發(fā)一個(gè)可以隨著時(shí)間而改變的軟件
1.套殼封裝
松耦合:你如果可以在一個(gè)系統(tǒng)中刪除某一模塊而不用因此去重寫其他模塊的話,這個(gè)系統(tǒng)就通常被稱為是松耦合的。
目的:
- 是為了松耦合,改動(dòng)的時(shí)候減少代碼量的修改,便于替換修改
- 使用delegate接口層隔離
例如: - 網(wǎng)絡(luò)庫(kù)的上層封裝,現(xiàn)在用HttpClient,可能以后會(huì)用Okhttp……
- 圖片庫(kù)的封裝:現(xiàn)在用Picasso,以后可能改成Freso……
2.隔離、分層
分層核心:管理依賴,降低復(fù)雜度。
隔離核心:一部分的改變,不影響其他部分。把共享和可能改變的部分隔離開(kāi),共享部分抽象成接口或者抽象類。
例如:
包名隔離:每個(gè)模塊業(yè)務(wù),獨(dú)立成一個(gè)api管理類和UI包。
MVP:M和V的隔離
設(shè)計(jì)模式的使用原因:
1.單例模式
針對(duì)一些存在線程安全的場(chǎng)景,例如數(shù)據(jù)庫(kù),多個(gè)對(duì)象容易導(dǎo)致線程充斥
2.Builder模式
類的成員變量太多,需要寫大量的構(gòu)造函數(shù)。
3.對(duì)象池模式
減少頻繁創(chuàng)建對(duì)象,防止內(nèi)存抖動(dòng)
4.狀態(tài)機(jī)
策略、流程、狀態(tài)