架構漫談讀後感

2022-05-03 05:15:07 字數 1681 閱讀 4780

這學期新開設了軟體體系架構這門課,學這門課之前架構漫談的九篇部落格進行了閱讀,對這門課以及架構設計進行了初步的認識與了解。

通過對這幾篇部落格的閱讀,首先需要明白什麼是架構,在最早期,每個人有自己的生活方式,人與人之間相互獨立,不相往來,隨著慢慢的發展,男女共同生活,也就出現了各自的分工,有的人做這個強些,有的人做那個強些,所以就出現了多人分工配合,慢慢的就形成了人的分群,然後通過某些機制例如交易結合在一起使得每個人獲得自己所需要的東西。因此,架構就是把乙個整體切分成不同的部分,由不同的角色完成這些,並通過建立不同部分相互溝通的機制,使得這些部分能夠有機的結合為乙個整體,並完成這個整體所需要的所有活動。在切分之前要先根據要解決的問題對目標系統的邊界進行判定,切分的原則要便於不同角色,對切分出來的部分,並行或序列開展工作,一般並行才可以減少時間。

架構實際上解決的是人的問題,而概念是人認識這個世界的基礎,所以對於概念的認識就顯得尤為重要。在古代,人們把概念稱作「名相」,相就是指代看到的東西。每個概念實際上解決的是人遇到的某個特定的問題,我們對這個問題給定乙個解決方案,這個解決方案的名字就是對應的某個特定的概念。要做好架構首先需要具備的能力就是要能夠正確的認識概念,能夠發現概念背後的問題,進而才能夠在以後的目標領域正確認識所要解決的問題。根據架構定義,做好架構首先要識別出要解決的問題,一般來說,如果把真正的問題找到,那麼該問題就已經解決百分之八十了。如何識別問題,有時候我們總在這個地方犯錯誤,識別問題最大的前提就是弄清楚要解決的是誰的問題,這樣系統的邊界也就隨之確定了,然後再去對問題進行討論。一般我們要解決的問題,一定都是人的問題;更進一步,架構師要解決的基本都是別人的問題,不是自己的問題;再進一步,任何找上架構師的問題絕對不是真正的問題,自己一定要明白發現問題永遠比解決問題更加重要。要正確的認識問題,需要問兩個問題,第一是這是誰的問題,第二是有什麼問題。只有確定了這兩個問題,才能找準自己接下來的方向,所以一般第一步可能會比較繁瑣,架構師的能力便體現在對這個問題的識別上。

在正確識別問題後,大部分情況下我們會看到問題已經基本解決,並不需要自己去做其它多餘的動作,但有時有些問題是需要我們做一些調整,這個調整的過程就是架構的切分。

切分就是利益的調整,每個人所追求的就是維護自己的利益並且使得利益最大化,這是人的本性,但每個人的時間和能力有限,這就需要自己做出一些捨棄,用自己擅長的去換取自己做不到的東西。而切分過程中需要遵循幾個原則,在連續時間內發生的乙個活動不能切分;切分出來的部分的負責人,對這部分的權利和義務是對等的;切分出來的那一部分不能超出乙個普通人的負載;切分是內部活動,所以對整個系統外部應該是透明的。

在對架構進行了認識之後,要了解軟體是怎麼回事以及如何運用架構思維實現軟體。軟體架構的出現和架構的定義是同樣的,軟體工程師的職責在慢慢的發展中不堪重負,也需要拆分為不同的角色形成獨特的架構體系。軟體架構要解決的就是業務問題以及計算機問題,業務問題的本質是業務所服務的物件的利益問題。因此也就需要架構師的出現,架構師要平衡別人的利益甚至調整別人的利益,對於架構師來說,語言和技術作為工具應該是信手拈來的。軟體實際上是對現實生活的模擬,虛擬化,需要注意,邏輯只能存在於business中,其餘不能有邏輯,否則會導致架構無法快速橫向擴充套件和分拆,增加了修改的成本,不符合開發人員以及業務利益。

最後,需要理清業務、技術以及架構的關係。技術是為了解決業務的問題產生的,沒有業務,也就談不上技術,學會了某種技術並不代表自己一定能夠解決問題。所以要作為一名架構師,要能夠準確識別採用什麼技術。

通過這次的閱讀使得自己對於架構有了乙個初步的了解,但還需要自己不斷地去探索學習,才能對這些有更深的了解,為自己日後的工作提供方便。

架構漫談讀後感

應老師的推薦閱讀了由資深架構師王概凱 kevin 執筆的系列專欄 架構漫談 9篇文章遞進地講述了 討論什麼是架構 怎樣做好架構 軟體架構如何落地 如何寫好程式等問題,文章生動形象多次舉通俗的例子讓本來生澀的知識變得更加容易理解,感觸頗多。對這系列文章印象的較深的一點是 一直在挖掘一些本質的東西,對一...

架構漫談讀後感

花了一周的時間利用課餘的閒散時間,總算看完了王概凱的架構漫談,這九篇部落格從相對全面的角度對架構進行了概述。自己也對架構有了更深一層的認識。感覺作者在部落格裡提到的對架構的理解對我們初學者來講幫助其實很大。架構其實就是根據要解決的問題,對目標系統的邊界進行界定,然後對目標系統按某個原則進行切分,接著...

《架構漫談》讀後感

要學好軟體架構,首先要解決的問題就是什麼是架構。一直以來,在軟體行業,對於架構的定義都有爭議,很多人都在討論架構,但是很多人都不知道到底什麼是架構。很多大佬都對這個架構有爭議了,像我這種還沒出師的菜菜鳥就更不用說了,更是對軟體架構沒有什麼理解。在讀過王概凱老師的 架構漫談 之後才有所了解,文章中寫到...