經過閱讀構架漫談,軟件架構師工做須要瞭解一下幾個方面:
編程
首先要理解什麼是架構,爲何須要架構
架構是規劃、設計和建造建築物和其餘物理結構的過程和產物。
人們完成一項任務,由於每一個人的能力不一樣,所擅長的方向不一樣,因此若是本身去完成一項任務通常要花費很長的時間,效率很低,可是人們對目標有更高的要求,因此須要提升效率,因此須要將任務進行分割,而後將每一部分交給擅長的人去作,而且並行進行工做,而後再將每一部分進行合併,造成一個總體,能夠大大減小完成任務所須要的時間,而且能夠將任務完成地很好,因此須要架構,架構能夠提升工做的效率。
架構就是根據要解決問題,對目標系統的邊界進行界定;對目標系統按某個原則進行切分,使每一部分都讓擅長的人來完成,並行或串行開展工做,最後將每一部分聯繫起來,合併組裝成一個總體。
架構
其次要認識概念,認識概念是理解架構的基礎。
要作好架構首先必須具有的能力,就是可以正確的認識概念,可以發現概念背後所表明的問題,進而纔可以認識目標領域所須要解決的問題,這樣纔可以爲作好架構打好基礎。因此理解架構必須先要認識概念,只有認識的概念,才能知道具體須要解決的問題,才能更好地作好架構。若是不瞭解目標系統的概念,不明白要作什麼東西也就不知道從何處入手,也就不可以快速地解決問題。瞭解了概念,而後再進行抽象,將不一樣的概念的類似的部分合並在一塊兒,造成一個新的概念。
spa
須要識別出須要解決的問題
作好架構首先須要識別出須要解決的問題,識別出須要解決的問題,那麼目標就不難進行實現了,要識別出問題首先須要找出這是誰的問題,找出問題的主體,知道了這是誰的問題,就能夠肯定問題的邊界,而後就能夠進行訪談,瞭解其真正所要實現的目標是什麼,而後纔可能真正的認識問題是什麼,而後再實現目標。發現問題永遠都比解決問題來的更加劇要,只有發現了問題,才能更好地解決問題,發現問題首先要找出這是誰的問題,架構師的能力大部分體如今找出這是誰的問題上。
設計
須要作好架構切分
之因此須要架構是由於一我的完成目標系統效率會很低,因此須要將目標系統進行切分,而後將每一部分分給擅長的人去完成,每一部分要進行溝通,而後再進行合併整合,最終造成一個總體,完成這個目標。因此軟件架構師須要作好架構切分,切分須要遵循一些原則,首先切分的部分必須是在連續時間內發生的一個活動,即這一個活動不能再切分了;切分出來的部分的負責人對這個部分的權利和義務必須是對等的,若是不對等將會損害一些人的利益,同時也損害總體的利益;切分出來的部分不該該超出一個天然人的負載;切分是內部活動,內部不管怎麼切,對整個系統的外部應該是透明的。同時切分出的小的部分造成了新的概念,切分應該最終造成一個樹狀結構,由於每個部分須要進行聯繫溝通,因此分層要越少越好,儘量編程一棵平衡樹,這樣相互之間的聯繫溝通效率就會高,整個系統的效率也將最大化。
效率
須要清楚什麼是軟件
軟件架構師是爲軟件創建架構,因此首先要了解什麼是軟件,軟件是將人們生活中的一些東西模擬化,而後經過計算機來實現,軟件實現了將人們現實中的工做轉化到計算機中,利用計算機的高效處理計算的能力減輕人們的工做。因此須要寫高效的軟件,因此就須要軟件架構來寫出優秀的軟件。
在軟件行業這麼火熱的時代,軟件架構師的工做很是關鍵,若是沒有軟件架構師那麼寫軟件將無章可循,沒有規則,沒有架構,那麼人們之間將不會分工合做,人們本身將很難創做出很優秀的軟件,那麼軟件也就不能很好地幫助人們解決問題,因此軟件架構師很是關鍵。作好軟件架構師的工做須要軟件架構師理解什麼是架構,要澄清一些必要的概念,要識別出目標系統須要解決的問題,其中識別要解決的問題須要首先知道是誰的問題,這樣才能更好地肯定系統的邊界,從而識別出真正須要解決的問題,架構離不開切分,須要將目標系統總體進行切分,遵循必定的原則對目標系統進行合理的切分,構建合理有效的溝通,完成每一部分,最後再合併整合到一塊兒,從而很好地完成目標系統。基礎