本篇文章被我保存到本地很長時(shí)間了,覺著不錯(cuò)和大家分享以下,由于沒有記錄原作者,所以不能標(biāo)注出處,不過仍向作者致敬。
不是每一個(gè)程序員都能夠成為一個(gè)架構(gòu)師——這是開發(fā)界廣為流傳的一個(gè)論調(diào)。架構(gòu)師群體往往對(duì)這個(gè)言論表示默許,這不得不令廣大入門不久的程序員們懷疑架構(gòu)師們是不是隱藏了什么武林秘籍。程序員要修煉什么武功才能晉升為一個(gè)架構(gòu)師?
1、 卓越的程序員
Fred George先生說:“不編程的架構(gòu)師的職業(yè)生涯是短暫的”。他說這句話的背景主要是針對(duì)有些架構(gòu)師的設(shè)計(jì)與實(shí)現(xiàn)有斷層的問題而言的,因?yàn)槿绻軜?gòu)師不去實(shí)踐,只是想當(dāng)然的認(rèn)為“沒問題,這個(gè)想法能實(shí)現(xiàn)”,那么對(duì)于項(xiàng)目的落實(shí)而言是個(gè)很大的隱患。支付寶架構(gòu)師馮大輝也表示過,架構(gòu)師是一個(gè)比較“虛”的崗位,主要的問題都在“落地”的過程中。
2、 抽象思維
很多優(yōu)秀的架構(gòu)師們都一致的表示,邏輯思維和抽象思維能力是一個(gè)架構(gòu)師最重要的素質(zhì)。eBay的Randy Shoup先生稱擁有條理清晰的邏輯思維能力的人“就像稀有動(dòng)物那樣難找”。Fred George則表示“駕馭概念的技能,在我看來是每一個(gè)人最高的潛力”,并表示自己不太介意這樣一個(gè)苗子在其他方面的技能和經(jīng)驗(yàn)的匱乏,因?yàn)樵谒磥沓怂季S之外的其他因素都是可以培養(yǎng)的。
3、 技術(shù)前瞻性
有人談到技術(shù)高手與架構(gòu)師的區(qū)別就在于,架構(gòu)師不光是著眼于現(xiàn)在,不僅僅局限于開發(fā)細(xì)節(jié),比如如何調(diào)用,如何并發(fā)等等。而是跳出三界外,考慮一下面向未來問題和潛在風(fēng)險(xiǎn)的應(yīng)對(duì)之道。
4、 問題解決大師
只是,架構(gòu)師之所以為架構(gòu)師,是在于他們在面對(duì)龐大系統(tǒng)之時(shí),仍然能夠敏銳的發(fā)現(xiàn)其底層之真實(shí)。這不僅需要此哲學(xué)層面的“內(nèi)功”,還需要架構(gòu)師具有多領(lǐng)域知識(shí)和經(jīng)驗(yàn)的積淀。
5、 多領(lǐng)域知識(shí)
架構(gòu)師身為一名技術(shù)領(lǐng)袖,需要通過發(fā)散知識(shí)的光芒來統(tǒng)御開發(fā)團(tuán)隊(duì)的。如果只是對(duì)本行業(yè)知識(shí)做到爛熟于心,那還僅僅是一名熟練工的水平。要想晉升更高的層次,還需要跳出“只緣身在此山中”的困惑。
6、 溝通能力
做到人性化的溝通,需要我們在平時(shí)就進(jìn)行培養(yǎng)。寫出大部頭的架構(gòu)書,有的時(shí)候并沒有用VISIO畫出的簡單架構(gòu)圖好理解。人對(duì)圖形理解遠(yuǎn)遠(yuǎn)大于對(duì)文字的理解,直觀簡單的UML圖可以極大的方便程序員理解架構(gòu)師的意圖。
7、 內(nèi)力
很多人理解的內(nèi)力就是開發(fā)技術(shù),包括語言的掌握、對(duì)框架的掌握、數(shù)據(jù)庫管理能力、安全管理能力等等。但是我們看到,架構(gòu)更多的內(nèi)力體現(xiàn)在對(duì)技術(shù)的綜合運(yùn)用上,光會(huì)編程的程序員,最多就能做到高級(jí)程序員,也就是技術(shù)實(shí)現(xiàn)上的高手。
8、 權(quán)衡取舍
Fred George先生提出了“短期濫用”的說法,即在系統(tǒng)能夠承受的范圍內(nèi)做出一些妥協(xié)。在ATAM方法中,分析的思路是基于“情景”的:你需要提出各種可能的情景,然后來證明在每一個(gè)用戶使用場景中,系統(tǒng)的哪一些內(nèi)容是必要的、不可丟棄的——從而確定哪些部分是暫時(shí)可以不予考慮的。
9、 管控能力
架構(gòu)師在管理和控制的能力上,需要有自己獨(dú)到的見解,而不是簡單的認(rèn)為這是項(xiàng)目經(jīng)理或者財(cái)務(wù)部門的事情。身為技術(shù)專家的架構(gòu)師,隨不需要處理那些煩雜的日常管理。奇虎架構(gòu)師李釗在一次接受采訪時(shí)道出過架構(gòu)師們的心聲,技術(shù)人才轉(zhuǎn)向管理就是莫大的浪費(fèi)。對(duì),如果架構(gòu)師只是一味的去進(jìn)行項(xiàng)目管理,那就和其他市場人員沒有任何區(qū)別了。在這里架構(gòu)師所需要的管理與控制,其實(shí)是從技術(shù)的角度,對(duì)一些問題的控制,特別是開發(fā)過程中的監(jiān)控,而不是普通意義上的純粹管理。
10、 藝術(shù)氣質(zhì)
一個(gè)優(yōu)美的系統(tǒng)則是可以像有機(jī)的生命一樣成長的,這是因?yàn)閺南到y(tǒng)開始架構(gòu)的那一刻起,架構(gòu)師就考慮到這個(gè)系統(tǒng)以后將會(huì)面臨的挑戰(zhàn),為系統(tǒng)的成長預(yù)留好空間。項(xiàng)目經(jīng)理經(jīng)常會(huì)對(duì)這位架構(gòu)師提出的看似理想化的要求不置可否——項(xiàng)目經(jīng)理只想著能夠盡快以比較低的成本實(shí)現(xiàn)客戶的需求,然而這些充滿藝術(shù)美感的想法其實(shí)是打造健康——因而優(yōu)美——的系統(tǒng)的根本因素。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點(diǎn)擊舉報(bào)。