APP Internal Share Classes

APP Internal Share Classes

背景

1. 遇到許多工程師缺乏比較規範化的使用FMDB、ASIRequest、公共宏定義處理、類別使用等。
2. APP內部,許多地方會用到這些公共類。
3. 尤爲是FMDB與ASIRequest使用的很糟糕。  
4. 分層模式,屬於數據訪問層的封裝。

說明

1. APP Internal Share Classes,包含了FMDB,ASIRequest框架。
2. 你能夠將APP內部公用功能類、宏定義、Model等放到對應的目錄下。
3. 這份文檔更大的意義是:指導性做用。

HttpManager(ASIRequest包裝)

1. 以HTTP網絡請求爲例,採用面向接口的方式,設計了網絡請求層public api。
2. 開發者只須要按照登錄示例方式,新增協議方法,新增發送網絡請求方法、完成與失敗方法。
3. 使用者只須要:
	3.1. 查看在HttpManagerProtocol.h相關接口說明。
	3.2. VC類 conform HttpManagerProtocol協議,並實現感興趣的方法。
	3.3. VC類發送網絡請求
		 [[HttpManager sharedManager] sendLoginHttpRequest:vc requestParam:param callbackParam:callbackParam];
4. 接口方法將model或者錯誤信息返回給vc,用於進一步處理。

總結:
	優點:
		各個vc只須要實現本身感興趣的協議方法。
		消息返回,只會返回給源消息發送者。(這個借鑑了target-action模式)
		消息的發送與返回,邏輯清晰。
		邏輯層與數據訪問層均是面向接口設計實現本身的功能,相互
		
	劣勢:
		須要新增比較多的協議方法。

DBManager(FMDB包裝)

1. 這個類並無真的建立(當前)。
2. DBManager能夠是一個(我的認爲應該最好是)APP singleton,處理多線程問題。
3. 對於多進程間數據庫訪問問題,能夠考慮採用其餘方式解決。

源碼示例git

相關文章
相關標籤/搜索