今天被鄙視了一下。一個(gè)編碼比我好的朋友說:“非魚,說實(shí)在的,我挺鄙視你搞的架構(gòu)師小組的?;竟Σ辉鷮?shí),就搞什么架構(gòu)師,是我一向鄙視的行為?!逼鋵?shí)我自己也認(rèn)為自己不是一個(gè)合格的架構(gòu)師,或許勉強(qiáng)算是一個(gè)預(yù)備役的架構(gòu)師吧。
但這并不影響我對于架構(gòu)師職業(yè)的理解和學(xué)習(xí),而我也愿意把我的學(xué)習(xí)經(jīng)驗(yàn)和大家分享。目前國內(nèi)真正的架構(gòu)師還是極少的,我以“架構(gòu)師”來稱呼自己,算是自 詡,但更是自勉。我建立“架構(gòu)師之家”這樣一個(gè)團(tuán)隊(duì)BLOG,更多是想加入的人(多半還不是架構(gòu)師吧)一起學(xué)習(xí)進(jìn)步,所謂每月至少一篇關(guān)于架構(gòu)師的文章算 是一種督促吧。
朋友的意思,如果我沒有理解錯(cuò)的話,基本功是指的編碼。沒有寫過代碼的人來做架構(gòu)師,是一個(gè)笑話。但如果只有Anders Hejlsberg這樣的人才能成為一個(gè)架構(gòu)師的話,恐怕這個(gè)世界上的架構(gòu)師就太少太少了。每個(gè)人都可以向Anders Hejlsberg學(xué)習(xí),但不是每個(gè)人都要成為Anders Hejlsberg。我認(rèn)為一個(gè)架構(gòu)師應(yīng)該對編碼很精通,能夠掌握各種數(shù)據(jù)結(jié)構(gòu)和大部分算法,知道何時(shí)何地應(yīng)用何種數(shù)據(jù)結(jié)構(gòu)和算法。這樣應(yīng)該足夠了。
架構(gòu)師應(yīng)該精通分析和設(shè)計(jì)。架構(gòu)師應(yīng)該比常人容易理解事物的基本原理,具有正確的分析手段和良好的認(rèn)識論、方法論基礎(chǔ)。掌握各種設(shè)計(jì)原則和模式是一個(gè)架構(gòu) 師的職業(yè)要求。架構(gòu)師應(yīng)該具有一定的領(lǐng)導(dǎo)能力,帶領(lǐng)一個(gè)團(tuán)隊(duì)。架構(gòu)師應(yīng)該具有良好的溝通能力,和客戶溝通以確保產(chǎn)品滿足其需求。
架構(gòu)師往往沒有一個(gè)他“自己”的產(chǎn)品,如Martin Fowler,這個(gè)牛人也沒有什么架構(gòu)產(chǎn)品吧?架構(gòu)是產(chǎn)品的基礎(chǔ),但架構(gòu)本身不是一個(gè)產(chǎn)品,架構(gòu)師所做的都是幕后工作。架構(gòu)師是編劇,重要而不如導(dǎo)演名氣 大,但Hollywood是編劇負(fù)責(zé)制,不是導(dǎo)演負(fù)責(zé)制。有激情的程序員不屑于架構(gòu)師,因?yàn)榧軜?gòu)師沒有一個(gè)產(chǎn)品。
架構(gòu)師需要考慮滿足多個(gè)風(fēng)險(xiǎn)承擔(dān)者的利益。站在不同風(fēng)險(xiǎn)承擔(dān)者的角度權(quán)衡利弊,盡可能滿足所有人的要求。他象一個(gè)走鋼絲的雜技藝人,最終會為自己的成功表 演而感受內(nèi)心的愉悅。但架構(gòu)師不是無原則的走中庸之道,他的原則就是所有風(fēng)險(xiǎn)承擔(dān)者的利益。
成功的架構(gòu)師會把殺手特性扼殺在搖籃之中。他不允許一個(gè)程序員過度考慮一個(gè)看上去非常吸引人但代價(jià)高昂的特性(中國稱“亮點(diǎn)”)或高性能的實(shí)現(xiàn)。因?yàn)檫@會對整個(gè)產(chǎn)品的發(fā)行造成負(fù)面影響,甚至于導(dǎo)致項(xiàng)目失敗。
架構(gòu)師對于產(chǎn)品質(zhì)量的敏感是程序員做不到的。他從全局角度考慮質(zhì)量,并把這些質(zhì)量的屬性反映到產(chǎn)品中。
“另外作為架構(gòu)師還要考慮的問題很多,甚至比技術(shù)架構(gòu)更重要如授權(quán)模式、部署模式及成本、維護(hù)方案、安裝及升級方案、商標(biāo)及商標(biāo)的相關(guān)元素、發(fā)布及發(fā)布管 理、安全因素、市場因素及技術(shù)市場架構(gòu)(個(gè)人認(rèn)為這個(gè)因素最難也最重要)” ——Donald
但這并不影響我對于架構(gòu)師職業(yè)的理解和學(xué)習(xí),而我也愿意把我的學(xué)習(xí)經(jīng)驗(yàn)和大家分享。目前國內(nèi)真正的架構(gòu)師還是極少的,我以“架構(gòu)師”來稱呼自己,算是自 詡,但更是自勉。我建立“架構(gòu)師之家”這樣一個(gè)團(tuán)隊(duì)BLOG,更多是想加入的人(多半還不是架構(gòu)師吧)一起學(xué)習(xí)進(jìn)步,所謂每月至少一篇關(guān)于架構(gòu)師的文章算 是一種督促吧。
朋友的意思,如果我沒有理解錯(cuò)的話,基本功是指的編碼。沒有寫過代碼的人來做架構(gòu)師,是一個(gè)笑話。但如果只有Anders Hejlsberg這樣的人才能成為一個(gè)架構(gòu)師的話,恐怕這個(gè)世界上的架構(gòu)師就太少太少了。每個(gè)人都可以向Anders Hejlsberg學(xué)習(xí),但不是每個(gè)人都要成為Anders Hejlsberg。我認(rèn)為一個(gè)架構(gòu)師應(yīng)該對編碼很精通,能夠掌握各種數(shù)據(jù)結(jié)構(gòu)和大部分算法,知道何時(shí)何地應(yīng)用何種數(shù)據(jù)結(jié)構(gòu)和算法。這樣應(yīng)該足夠了。
架構(gòu)師應(yīng)該精通分析和設(shè)計(jì)。架構(gòu)師應(yīng)該比常人容易理解事物的基本原理,具有正確的分析手段和良好的認(rèn)識論、方法論基礎(chǔ)。掌握各種設(shè)計(jì)原則和模式是一個(gè)架構(gòu) 師的職業(yè)要求。架構(gòu)師應(yīng)該具有一定的領(lǐng)導(dǎo)能力,帶領(lǐng)一個(gè)團(tuán)隊(duì)。架構(gòu)師應(yīng)該具有良好的溝通能力,和客戶溝通以確保產(chǎn)品滿足其需求。
架構(gòu)師往往沒有一個(gè)他“自己”的產(chǎn)品,如Martin Fowler,這個(gè)牛人也沒有什么架構(gòu)產(chǎn)品吧?架構(gòu)是產(chǎn)品的基礎(chǔ),但架構(gòu)本身不是一個(gè)產(chǎn)品,架構(gòu)師所做的都是幕后工作。架構(gòu)師是編劇,重要而不如導(dǎo)演名氣 大,但Hollywood是編劇負(fù)責(zé)制,不是導(dǎo)演負(fù)責(zé)制。有激情的程序員不屑于架構(gòu)師,因?yàn)榧軜?gòu)師沒有一個(gè)產(chǎn)品。
架構(gòu)師需要考慮滿足多個(gè)風(fēng)險(xiǎn)承擔(dān)者的利益。站在不同風(fēng)險(xiǎn)承擔(dān)者的角度權(quán)衡利弊,盡可能滿足所有人的要求。他象一個(gè)走鋼絲的雜技藝人,最終會為自己的成功表 演而感受內(nèi)心的愉悅。但架構(gòu)師不是無原則的走中庸之道,他的原則就是所有風(fēng)險(xiǎn)承擔(dān)者的利益。
成功的架構(gòu)師會把殺手特性扼殺在搖籃之中。他不允許一個(gè)程序員過度考慮一個(gè)看上去非常吸引人但代價(jià)高昂的特性(中國稱“亮點(diǎn)”)或高性能的實(shí)現(xiàn)。因?yàn)檫@會對整個(gè)產(chǎn)品的發(fā)行造成負(fù)面影響,甚至于導(dǎo)致項(xiàng)目失敗。
架構(gòu)師對于產(chǎn)品質(zhì)量的敏感是程序員做不到的。他從全局角度考慮質(zhì)量,并把這些質(zhì)量的屬性反映到產(chǎn)品中。
“另外作為架構(gòu)師還要考慮的問題很多,甚至比技術(shù)架構(gòu)更重要如授權(quán)模式、部署模式及成本、維護(hù)方案、安裝及升級方案、商標(biāo)及商標(biāo)的相關(guān)元素、發(fā)布及發(fā)布管 理、安全因素、市場因素及技術(shù)市場架構(gòu)(個(gè)人認(rèn)為這個(gè)因素最難也最重要)” ——Donald