1. 程式人生 > >【純感悟】我眼裡的安卓架構師(一)

【純感悟】我眼裡的安卓架構師(一)

       提起架構師,大家會覺得很神祕很高深,但是真的如此麼?安卓架構師是在現實的產品需求基礎上對技術的一些整體構思,要考慮系統性,實用性,優化性,邏輯性,可擴充套件性,要滿足產品各方面的技術需求。相當於是頂層設計,要兼顧到各個方面。下面就具體的說一下:

      1:從程式語言角度考慮問題。android分為四層,第底層是liunx核心,最上面是framework層,基本上可以看作是對java的封裝,除了要NDK呼叫C庫裡面的程式碼,其他的情況下是基本上用java。個人認為java思想非常不錯,面向物件的程式設計,看似簡單,在專案是有非常大的好處,對安卓也是非常適合的。所以請多掌握一些java的程式設計思想。從底層設計上進行考慮,比如:如何完全的退出?要把Activity等整體元件作為一個物件看待和管理。如何做到全域性引用上下文?application是否可以作為一個context物件看待。一些常用的功能模組如網路模組,判斷有無網路,下載,通知等能夠作為一個整體的功能物件看待呢? 能不能用繼承的思想來統籌規劃一些相似的功能呢?

     2:模組整合化:這個簡單的來說,作為一個架構師,一個非常重要的工作是能夠做到整理,梳理產品技術實現流程,規劃的要清清楚楚,明明白白。最重要的是要進行功能模組化,第一可以把功能模組化之後,實現多人同時開發,出現bug之後也好發現問題。第二針對模組進行下一步的優化和處理,針對模組出現問題進行完善。第三程式碼看起來更加簡潔,易懂,方便給後來者參考,維護起來更加方便。那麼要做哪些常用模組?  網路程式設計 , 資料存取(sqlite,shareprefence等), ,java bean類, Adapter 介面卡 , Threads(執行緒類,當然更加需要一個執行緒池管理),Activity or fragment(方便查閱和修改) ,分享模組,通知類管理,service(服務類),Utils(一些比較常用的輔助功能),TASKs(非同步任務類)等等,我們都要儘量的規劃好,自己查詢和修改起來也會非常方便,

從另外一個角度來講 單個功能模組的開發要儘量放在一起。比較生動和具體。

   3:程式設計設計模式:MVC,java設計模式(工廠模式,單例模式,介面卡模式,組合模式,策略模式,觀察者模式,迭代器模式,還有繼承和多型),這些都需要好好的把握的。實踐之後就會發現,對程式碼優化有非常多的好處,讓你的架構更加清晰明確。