很多Android的小伙伴在做了多年的開發之后,始終搞不清楚達到Android架構師需要何種技能,我們對比着Android高級工程師來說明。
我們先來看一下Android高級工程師的招聘要求
職位描述:
Responsibility
1. Android平台功能模塊的設計與開發
2. 移動端開發框架的研究與設計
3. 移動端技術規范的制定與推廣
4. 移動端技術培訓
Requirements
1. 重點高校本科及以上學歷,計算機及相關專業畢業
2. 精通java語言,熟悉面向對象設計原則。
3. 有至少1年的Android開發經驗,有app上線的優先考慮
4. 具有較強的編程和解決問題的能力,具有較好的數據結構及算法基礎功底
5. 對移動互聯網產品有濃厚的興趣
其實簡單點,
就是能夠獨立開發APP =有APP上線
APP有設計感 = 懂設計模式設計原則
項目經驗豐富 = 較強的編程和解決問題的能力
內存和性能優化 = 具有較好的數據結構及算法基礎功底
GitHub 開源項目 = 對移動互聯網產品有濃厚的興趣
在我看來
1.Android高級工程師 + 全局眼光 = 架構師
所以架構師必備的一項技能就是要放眼全局,做的設計要能夠思慮長遠,如何做到?
多看Androd源碼,從系統運行的角度思考你寫的東西,在Android世界是怎么存在的。
2.認知上要達到WHAT HOW WHY三階段的WHY的程度
打比方說,我們使用了第三方的庫,最開始WHAT階段是知道它怎么用,可以解決什么問題
然后HOW階段,我們理解了這個庫是怎么運行的,內部的架構是怎么樣的,高級工程師多停留在這個階段。
最后的WHY階段,為什么這么設計?有沒有更好的設計?
當你到了WHY階段了,你就積累了大量的設計源泉。
3.行動上要多用架構解決實際問題
在Android高級工程師積累的基礎上,解決問題的時候多以架構設計來解決,就需要
精通設計模式,不拘泥於設計模式,設計模式是在遵循Java設計原則的前提下,在大量的應用實踐中總結出來的,猶如武功招式,
這個階段要無招勝有招,多重招式疊加制敵。
還包含用架構思路來解耦,組件化,動態加載
這里為大家獻上一個Android架構師的學習路線
首先是Java語言進階和Android相關技術內核;
其次是各大體系;
還有移動架構師方面;
以及現在挺火的微信小程序;
HYBIRD開發;
圖片上傳后可能不是特別清晰了,如果有看不清楚需要高清的私我。我看到后會統一回復
