設計模式群23998319。對設計模式不感興趣的勿擾。謝謝!。
昨天新人報道,問了幾個問題。
問:
什么是設計模式?我一直以為做軟件只需要 語言+數據結構。
有人這樣回答,我理解數據結構也是一種設計模式。
不過這個我并不茍同。
我所認為
數據結構是面向最底層的,而設計模式是面向應用開發的一種策略。數據結構是解決的如何實現,而設計模式是在此實現上面向應用的一種開發策略。
又問設計模式僅僅是針對復用?
回答:不是僅僅針對復用 擴展啦 還有測試等等,當時自己也就只能想到這些。
提問者 設計模式有什么用?開始看到設計模式這四個字心里總想知道這個問題,不過當真的知道了,就會覺得問這個問題有點傻......(恨不得拿頭去撞墻......)
設計模式有什么用?設計模式說白了就是一種前人設計代碼或者說軟件總結出來的模板(很有用的)。我們學習它就是問了經驗復用。為了讓自己的代碼能更好的適應變化,提高程序的可維護性和可擴展性。學寫代碼就是這樣,就是用別人的經驗和權威的原則寫出能解決客戶需求的代碼,雖然創新思維是好東西,沒必要什么都自己來創造,不可以總結造電燈,自己造個編程語言再自己開發代碼。所以學習前者的經驗是我們的主流。
我們是基于一些OOP是設計原則根據不同的需求通過不同的設計模式來到底所說的:更好的適應變化,提高程序的可維護性和可擴展性。
我答:可能你現在開發的軟件針對現在的形式是很適合的,但是當你要進行功能或行為上的擴展的話,松耦合的設計就可以使你不必修改多個類來,擴展功能了。其實現在的很多程序員并沒有真正的OO 。也包括我,都是針對要求去實現寫特定的類,所以我總認為,在編碼前面的建模還有分析是很重要的。
又問:建模就是建立"模式"?
答 這個“模”不是模式 是模型。就和建筑上的畫圖差不多
又問:模型就是指軟件的構造(結構)組成對吧?
答:恩 還有構建之間的關系,消息通訊等。
每一次的提問和回答都最自己的知識有所提高。讓我思考更多,比如在問什么是模型的時候,這個確實自己也吃不準。在以前的學習中并沒解釋過,是很虛幻的概念,可意會不可言傳的東西。按照我的理解就是通常建筑上開始時候的設計。