1. 程式人生 > >ios 移動端架構淺析

ios 移動端架構淺析

一、什麼是架構,架構主要考慮什麼事情
1、架構(software architecture): 架構是一些列相關的抽象模式,用於指導大型軟體系統各個方面的設計。多數架構師會從直接上來認識他,但要給出精確的定義卻很難。
2、app架構主要考慮的事情:
(1) 網路層: 如何讓開發人員方便安全呼叫網路API,而且在各種網路環境下都能有良好的體驗。
(2)頁面展示: 頁面如何組織,儘可能降低業務邏輯的耦合度,提高開發效率
(3)資料持久化: 當資料涉及到本地存取的時候,如何降低效能消耗(主要涉及到快取)
(4)動態部署方案: ios應用有稽核週期,如何能通過不發版本的方式展示新的內容給使用者,如何緊急修復bug。
……
其實對於ios客戶端應用的架構來說,複雜度不亞於服務端。但是側重點和入手點跟服務端不一樣而已。例如: c10k的問題(伺服器同同時支援成千上萬客戶端的問題),正常的app根本就不需要考慮到。

二、架構設計的方法
1、搞清楚要解決哪些問題
你必須清楚你要做什麼,業務希望要什麼,而不是為了架構而架構,也不是為了體驗新技術而去修改架構方案。以前是MVC,最近流行MVVM,如果過去的MVC是個好架構,沒有什麼特別大的缺陷,就不要推倒搞成MVVM
2、問題分類、模組化
3、搞清楚問題之間的依賴關係
4、推測下一步的可能走向,必要時新增新的模組
5、最重要的一步: 先解決依賴關係中最基礎的問題,實現基礎模組,然後用基礎模組堆疊出整個架構