回覆列表
  • 1 # 兩個沙沙愛玩玩

      設計模式是架構的手段(之一)。  具體一點說,設計模式可以在某些情況幫助架構軟體的靜態結構。  而架構的範圍要大一些,更高層一些,考慮的更多的是非常重要的全域性性的design decision。一般好的(靜態)架構可以儘量使變化發生在區域性(模組內)而不影響整個系統。架構上的變化往往成本會非常高。  而且設計模式只有一些是適用於架構的,還有一些只是用於具體的類設計的,剩下的一些則只是克服程式語言的限制而已。  打個不恰當的比方,有點像擋拆和戰術的關係。  在合適的情況下用好擋拆可以很好的執行戰術,  但戰術不只有擋拆,  而且有的戰術不需要擋拆,  最重要的是盲目的用擋拆有時候反而會起反作用。  面對客戶嗶嗶時,我們用需求分析架構。  面對整個軟體或系統時,我們談論架構分析。  面對軟體模組設計時,我們使用設計模式。  面對模組實現時,我們應用特定程式語言的特性。  軟體架構 :一般場景下擁有設計的選擇權  設計模式 :選擇後特定場景下的最佳實踐  軟體架構是軟體的一種搭建形式,往往規定了軟體的模組組成,通訊介面(含通訊資料結構),元件模型,整合框架等等。往往規定了具體的細節。  設計模式是一種軟體的實現方法,是一種抽象的方法論,是為了更好的實現軟體而歸納出來的有效方法。  實現一種軟體架構,不同組成部分可能用到不同的設計模式,某一部分也可能可以採用不同的設計模式實現。

  • 中秋節和大豐收的關聯?
  • 寡頭是什麼?