《程序員必讀之軟件架構(gòu)》讀書筆記
網(wǎng)站作者 Simon Brown的書。編碼的架構(gòu)師,一直是我的職業(yè)模板。而當(dāng)年我覺得RUP的基于4+1視圖的機(jī)械架構(gòu)文檔模板不足以表達(dá)系統(tǒng)時(shí),Simon Brown的模板給了很好的過渡范例。
架構(gòu)師應(yīng)該編碼嗎?
有些公司認(rèn)為架構(gòu)師太寶貴了,不該承擔(dān)日常編碼工作。
優(yōu)秀的架構(gòu)師的重要特征是抽象思維能力,也可以理解為不把時(shí)間耗在細(xì)節(jié)里。
一些大型項(xiàng)目通常意味著照看更大的“大局”,有可能你根本沒時(shí)間寫代碼。
你不必放棄編碼,也不要把大部分時(shí)間用于編碼
你不應(yīng)該因?yàn)?ldquo;我是架構(gòu)師”,就把自己排除在編碼之外。但也必須有足夠的時(shí)間扮演技術(shù)架構(gòu)師的角色。
1. 參與編寫代碼
要避免成為PPT架構(gòu)師, ***是參與實(shí)現(xiàn)與交付的過程,確保架構(gòu)的交付,接地氣的了解設(shè)計(jì)在實(shí)現(xiàn)上的問題,演進(jìn)架構(gòu)而不是畫完框圖就交給實(shí)現(xiàn)團(tuán)隊(duì)從此不管。同時(shí),縮短與團(tuán)隊(duì)的距離,分享自己軟件開發(fā)的經(jīng)驗(yàn),幫助團(tuán)隊(duì)對(duì)架構(gòu)的正確理解。
另外,作為開發(fā)團(tuán)隊(duì)的一份子,你不需要是開發(fā)代碼***的。
2. 構(gòu)建原型、框架和基礎(chǔ)
如果不能參與日常編碼,至少嘗試在設(shè)計(jì)時(shí)快速構(gòu)建原型去驗(yàn)證你的概念。還有為團(tuán)隊(duì)編寫框架和基礎(chǔ),這也是最磨練與體現(xiàn)編碼與設(shè)計(jì)能力的時(shí)刻。
3. 進(jìn)行代碼評(píng)審
如果完全沒有時(shí)間編碼,至少參與代碼評(píng)審,了解發(fā)生了什么。
4. 實(shí)驗(yàn)并與時(shí)俱進(jìn)
如果完全沒有時(shí)間在工作時(shí)間里編碼,在工作之外你往往有更多空間來維持編碼技能,從貢獻(xiàn)開源項(xiàng)目,到不斷嘗試***的語言、框架。
一般來說,一個(gè)寫代碼的軟件架構(gòu)師會(huì)更有成效也更快樂。