日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

架构之美

發布時間:2023/12/14 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 架构之美 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

架構的完美性

《團隊之美》這本書里面有對 Mike Cohn 的一段采訪,他提到:
“一個應用中所有的代碼不一定要處于同樣的質量水平”。
“不是每件事都要做到第一流,在大多數情況下,我們根本沒機會做到第一流”。

軟件架構設計其實更加類似于大自然“設計”一個生物,通過演化讓生物適應環境,逐步變得更加強大。

就如下圖的技術發展趨勢圖一樣,世界上其實不存在完美的架構。多數情況下,架構是一種妥協,一種特定時期和場景下平衡的產物。

架構的抽象性

如果一個技術已經存在3年,比如現在很火的前端技術React和Vue等,那么預估這個技術大致還有3年的生命期,再久就不確定了;

如果一個架構或設計原則已經存在15年,例如面向對象設計的SOLID原則,可以預期它還有15年甚至更久的生命期。原則是比具體技術

更抽象,更接近事物本質,也更經得起時間考驗的東西。這些原則沉淀在架構師的腦海中,最終內化成他的mindset,以潛意識方式影響和指導他的架構和設計工作。

今天和大家介紹實戰派的開發架構大師Robert C.Martin以及他的力作

  • 敏捷軟件開發:原則模式與實踐 –- 第13屆軟件開發震撼大獎獲獎作品;在這本書,Robert 大叔提出了開創先河的面向對象設計的SOLID 五大原則。
  • 代碼整潔之道 –- 細節之中自有天地,整潔成就卓越代碼。在這本書,Robert 提出一種觀念:代碼質量與其整潔度成正比。
    干凈的代碼,既在質量上較為可靠,也為后期維護、升級奠定了良好基礎。
  • 架構整潔之道 –- 人的意愿是無窮的,而實際行動卻處處受限。人的欲望是無止境的,行為卻不得不遵從現實的限制。by 威廉·莎士比亞。
    在這本書,Robert 提出一種觀念:所謂的架構,就是用最小的人力成本來滿足構建和維護系統需求
  • 架構的著名定律

    計算機雖然歷史不長,但是在高速發展的歷程中,產生了很多著名定律。除了大家耳熟能詳的摩爾定律外,今天我們再聊聊和架構相關的兩個著名定律。

    分別是并發編程的阿姆達爾定律和微服務的康威定律

  • 阿姆達爾定律(Amdahl’s Law)
    阿姆達爾定律的模型闡釋了我們現實生產中串行資源爭用時候的現象。如下圖模型,一個系統中,不可避免有一些資源必須串行訪問,這限制了我們的加速比,即使我們增加了并發數(橫軸),但取得效果并不理想,難以獲得線性擴展能力(圖中直線)。

    這個定律的最佳工程實踐,大家可以參看 《并發編程實戰》的 第11章 性能與可伸縮性
  • 微服務的康威定律(Conway‘s Low)
    康威定律的核心就如下一句話:
    Organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations. - Melvin Conway(1967)
    設計系統的組織,其產生的架構設計等價于組織間的溝通結構。
    組織的溝通和系統設計之間的緊密聯系,在很多別的領域有類似的闡述。對于復雜的系統,聊設計就離不開聊人與人的溝通,解決好人與人的溝通問題,才能有一個好的系統設計。
    相信幾乎每個程序員都讀過的《人月神話》,里面許多觀點都和這句話有異曲同工之妙。
  • 總結

    以上是生活随笔為你收集整理的架构之美的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。