什麼是代碼架構(我對設計模式的理解)

設計模式,這是我聽過最糟糕的翻譯,這個名字對於程序員來講有點高高在上,難以理解,尤爲是php,python,nodejs這些腳本語言的開發人員可能由於這個名字就忽視了設計模式的重要性。固然,除了名字之外,從更深層次,更具體來講,我以爲有三個緣由:php

  1. 不用設計模式也能夠完成工做,不少時候反而更簡單快速;
  2. 軟件的世界快速迭代,不少設計模式有些過期了;
  3. 若是沒有理解透徹一些設計模式,可能還存在過分設計的問題,拿着把錘子,看到哪裏都是釘子。

可是用所謂‘簡單’的方法去寫的代碼,業務一複雜以後,你就會發現改動之痛苦,改一個功能要看完全部流程,最後不得不重構,相信不少人都會有這個經歷,這些就是設計模式解決的問題,可是精通了設計模式並不能解決全部問題,經常也要重構,設計模式絕對不是銀彈。node

設計模式的本質是什麼

設計模式其實就是架構,實現一個模塊或者功能有幾種方法,前面的人總結了他以爲最優的方法,而後抽象出來成爲一種模式,這就是設計模式。本質上這和架構沒有什麼區別。python

設計模式和架構的區別

那架構和設計模式有沒有什麼區別呢,實際上是有區別的,某種程度上能夠這樣理解:架構是從整個系統,更宏觀的層面來總結的,而如今你們理解的設計模式,更可能是從代碼層面出發,或者框架的層面來總結的。可是這種區別並非軟件架構大師們主觀的結果,這兩個概念最開始是一個東西,可是隨着軟件複雜度的不斷增長,演化成了兩個概念。git

更好的理解設計模式

我以爲對於設計模式的理解是把設計模式歸併到架構的一部分,是架構的子集,重命名爲代碼架構,這樣好理解不少。程序員

我的githubgithub

相關文章
相關標籤/搜索