1 前言
只要有1,2年工作經驗的程序員,多多少少都會接觸到架構東西。可能平時工作中不一定會有機會從0到1完完全全自己去設計一套架構出來,但是如果想成爲高級工程師,技術專家,架構師……儘早接觸架構方面的知識是有利無害的。我收集了很多材料,現在彙總在這裏,方便查閱。
這邊博文會一直更新的哦!現在的版本是 2020-03-05 更新的。
2 雜談
Android框架式編程之架構方案(這篇文章個人覺得總結的很不錯,把目前Android App開發會使用的架構都有提及到)
3 編碼架構
編碼架構,也有人稱爲代碼架構、架構模式、框架模式等等,主要分爲三類:MVC、MVP 和 MVVM。
3.1 MVC
Android基礎——框架模式MVC在安卓中的實踐(這篇文章實現的MVC有點特別哦!可以看看!)
Android開發-通過通俗易懂的Demo讓你理解Android中MVC架構和MVP架構
3.2 MVP
淺談構架模式 - 考拉移動團隊的技術博客(涉及MVP和MVVM)
一文帶你全面瞭解MVC、MVP、MVVM模式(含實例講解)(主要介紹了MVP)
3.3 MVVM
Android項目開發-MVVM(7篇文章組成的一個專題)
4 工程架構
工程架構,也有人稱爲項目架構,主要分爲四類:單工程模式、模塊化、組件化、插件化。其中“單工程模式”就是整個項目工程只有一個module,主要靠分包來進行功能劃分,是最基礎的一種工程架構,我就不羅列資料了。
對於“模塊化”和“組件化”的區別,估計很多人都比較迷吧!根據這邊文章“對組件化與模塊化的思考與總結”的觀點,大概可以這麼講:
- 模塊化強調的是拆分,無論是從業務角度還是從架構、技術角度,模塊化首先意味着將代碼、數據等內容按照其職責不同分離,使其變得更加容易維護、迭代,使開發人員可以分而治之。
- 組件化則着重於可重用性,不管是界面上反覆使用的用戶頭像按鈕,還是處理數據的流程中的某個部件,只要可以被反覆使用,並且進行了高度封裝,只能通過接口訪問,就可以稱其爲“組件”
我個人是比較贊同這種說法的,所以我就不把模塊化和組件化單獨來講了。
4.1 模塊化和組件化
安居客 Android 項目架構演進 - BaronTalk
Android 架構思考 (模塊化、多進程) - Spiny
Android組件化方案最佳實踐 - 門心叼龍(涉及到插件化,其中開源的項目挺不錯的)
Android組件化方案 - 張華洋(對於組件化的介紹非常詳細,同時還有關鍵代碼的講解)
4.2 插件化
如果想進一步交流和學習的同學,可以加一下QQ羣哦!