為什麼要學習設計模式 1、軟體開發越來越複雜,對軟體設計的要求也越來越高。而軟體設計和架構的入門功夫就是深入理解和掌握設計模式。因此,設計模式的重要性就不言而喻了。 2、設計模式已經成為軟體開發人員的“標準辭彙” 3、學習設計模式是個人提高的捷徑。為什麼這麼說呢?因為設計模式其本質是很多前輩(大牛級 ...
- 為什麼要學習設計模式
1、軟體開發越來越複雜,對軟體設計的要求也越來越高。而軟體設計和架構的入門功夫就是深入理解和掌握設計模式。因此,設計模式的重要性就不言而喻了。
2、設計模式已經成為軟體開發人員的“標準辭彙”
3、學習設計模式是個人提高的捷徑。為什麼這麼說呢?因為設計模式其本質是很多前輩(大牛級人物)經驗的積累,都是一些相對優秀的解決方案,而且很多問題都是典型的有代表性的問題。我們可以透過設計模式去學習到這些牛人的解決方法,看看人家是怎麼解決的。我們學習設計模式就可以學習到眾多前輩的經驗,吸收和領會他們的設計思想。掌握他們解決問題的辦法。變相就相當於你跟牛人在學習了。這時候就相當於站在這些巨人的肩膀上,可以讓自己的能力得到快速的提升。雖然說學習設計模式有一定的難度,但絕對是快速提高個人能力的捷徑。有句話叫強將將手下無弱兵。雖然我們可能達不到這些牛人的水平,但我們可以吸收他們的一些精華;吸收他們一部分思想;吸收他們解決問題的方式和方法。其實無形當中自己的水平也會提高不少。
4、不用重覆發明輪子。設計模式本身就是解決特定問題的方式和方案,當我們遇到這些問題的時候,就可以直接使用這些設計模式了。這樣可以節省我們大量的時間,而不用在花時間去找解決方案了。
......
- 學習設計模式的層次
1、基本入門級
要求能夠正確和掌握每個設計模式的基本知識,能夠識別在什麼場景下,出現了什麼樣的問題,採用哪種設計模式來解決它,並能夠在實際的程式設計和開發中套用相應的設計模式
2、基本掌握級
除了具備基本入門級的要求外,還要求結合實際的應用場景,對設計模式進行變形的使用。
事實上,實際開發中,經常會碰到跟標準設計模式的應用場景有一些不一樣的情況。此時要合理的使用設計模式,就需要對他們進行適當的變形,而不是僵硬的套用了。當然能變形的前提是要能準確深入的理解和把握設計模式的本質。萬變不離其宗,只要把握本質,才能夠確保正確變形使用而不是誤用。
3、深入理解和掌握級
除了具備基本掌握級外,更主要的是從思想和方法上吸收設計模式的精髓,並融入到自己的思路里去,在進行軟體的分析和設計的時候,能隨意的、自然而然的應用,就像是自己思維的一本分。
- 設計模式的學習
事實上,在實際開發中,稍微複雜點的應用,當解決某個問題的時候,就不再是單一的應用某一個設計模式,而是綜合應用多種設計模式。例如:結合著某個具體的情況,很可能需要把設計模式A進行簡化,然後結合上設計模式B的一部分,再組合應用變形的設計模式C等......來解決實際的問題。
----------------------------------------------------------------------