從「變」來理解設計模式

2021-05-17 12:37:37 字數 834 閱讀 1040

對於設計模式,一直不怎麼明白,看了一些簡單模式就看不下去了。我覺得不了解這個技術或者的需求和由來的話就很難理理解和掌握。接觸這些也有一些時間了,現在該寫點自己的理解了。

什麼是開閉原則,什麼是單例模式。我想很多人應該很快能夠反映出來他們的概念。但是要問這些原則什麼時候用?該用哪些?我想這些很多人就大眼瞪小眼了。原因就是不知道這些模式為什麼會出現。當然我現在也不是很清楚。呵呵。

這還要從大學課本的《軟體工程》說起,那時候聽的是一頭霧水。根本不知道講什麼。後面做了些專案才理解了一些。軟體工程就是研究用工程化方法構建和維護有效的、實用的和高質量的軟體。 軟體就是乙個產品,有需求,設計,開發,使用,維護公升級,到最後終止,也就是軟體的生命週期。

我們可以從上面的分析看出,軟體其實是乙個變化的東西,而不是開發完成就成了乙個死東西。這就是從開發的成本來考慮,需要可復用,且復用也要靈活,盡量簡單。那麼那些設計模式跟這個是什麼關係呢?對了,設計模式就是這麼來的,我有這個需求了。我需要乙個可適應變化的軟體,所以我需要很好的設計,要用介面,繼承,抽象,oop這些具體的東西去設計分析,以便以後的修改公升級和維護。而設計模式就是對這些設計的一些經驗的積累,可以在設計的時候選擇一些模式來滿足自己的設計。

理解了這些,就會知道,我如果只是乙個小軟體,用完就不用了,那就根本不需要去考慮什麼模式和設計,怎麼快能實現就怎麼設計。而對於乙個成本很高的軟體,就需要認真設計,因為你不希望它以後不能修改或者修改麻煩,那需要成本。

所以,看軟體需要從乙個「變」的角度去看,設計的時候要從「變」的角度去設計。也就是說設計時就要有預見性,沒有對以後的預見性,不知道軟體的可能需求,那麼肯定就設計的是不能適應變化的軟體。如果僅僅只是知道完成現在的需求,那麼可以說乙個架構師設計的結果和乙個普通學生設計的結果是一樣的。

從MVC理解設計模式

size x large 本文將透過mvc來幫助我們理解 模式 這一術語的含義。mvc包含三類物件。模型model是應用物件,檢視view是它在螢幕上的標示,控制器controller定義使用者介面對使用者輸入的相應方式。不使用mvc,使用者介面設計往往將這些物件混在一起,而mvc則將它們分離以提高...

從0理解設計模式《簡單工廠》

我在開始寫程式的時候經常會遇到一種情況,例如更改乙個字段,或者新增乙個小功能,就會把之前的廢棄掉,重寫單獨開乙個類,然後增加變數,方法 貼上複製那種 結果就單單改了其中的乙個功能而已,耗時耗力,如果你也遇到這種情況,那麼說明非常需要學習下設計模式了。我認為設計模式是 一種思想,一種模式,一種套路,一...

設計模式理解

常有人調侃設計模式 語言留下的坑,就要設計模式來填。設計模式就是描述在各種不同情況下,要怎麼解決問題的一種方案。對於一些專案,我們不可能做到一次開發終身使用,而是隨著需求的不斷增多,我們需要對程式進行不斷地修改,以此來適應新的需求,通過好的設計模式,可以使我們程式松耦合,減少彼此之間的依賴,從而使其...