學習設計模式的感想 – what benefits I get after studying design pattern

接觸設計模式的時間說長不長說短不短,但自從接觸了之後,才發現不管網路或者開發者社群,時不時都會有人提出 如何學習設計模式 的疑問。對於只是聽聞 設計模式 這個名稱,並被灌輸這個很重要,必須去學的想法的人,設計模式可能就像神祕學一般難易入門。

其實設計模式沒有這麼神奇與強大,只要累積一定的程式開發經驗之後,設計模式的想法基礎自然會逐漸被你聽聞或者吸收 (頓悟)。所謂的學習設計模式,只不過是強行頓悟的一個過程,像是打坐或冥想一般。

這篇文章是我接觸設計模式後的想法彙整,且提到了些關於學習過程的想法,希望可以幫到想接觸的人。

閱讀更多»

廣告

初探 23種 設計模式 – when I first time use design pattern

幾個月前我讀了本關於在遊戲開發應用設計模式的書 <設計模式與遊戲開發的完美結合>,這是我第一次接觸 design pattern 設計模式 (求學期間還真沒聽過),才看了前幾章,我就想:這是甚麼!原來有這麼厲害的東西啊!

全書閱畢後,也嘗試實踐於我的專案之中,受益良多。不過也發現我對 設計模式 的熟悉度與瞭解還不夠充分,無法隨心所欲的發揮它的效用,於是又有了第二本書 <設計模式的解析與活用> 正要閱讀。在仔細閱讀這本新書之前,我回想了在這幾個月我實踐了多少設計模式,做下筆記,也算是第一篇書本的讀後心得。

閱讀更多»

物件導向中常見的幾個設計原則 – Some Principle of Object Oriented Design

隨著參與大型專案的開發次數越來越多,對維護與穩定的要求越來越高,我不斷地感受到,改變一下程式的設計方式或許不影響程式功能,但是在未來修改或擴增功能時卻會變得更加容易。甚至好的設計之下,可以將部分的程式碼作點修改,就能適用於不同的專案,大大地節約開發所需要耗費的時間跟心力。

針對於好的設計,最近藉由一本書在學習設計模式,書中有一小節簡短帶過了一些關於進行物件導向開發時,可以讓開發或者維護更容易的一些設計原則。

雖然只是短短一小節,但是就讓我體會到站在巨人肩膀上的感覺。過去為了讓自己的程式有著上述容易維護與可重複使用的優點,往往會花上許多時間去反覆思考,但原來早就有前人歸納出幾個原則可以作為設計的大方向了,我只是再次考慮了相同的問題而已。

這些原則不能說是絕對的,但是如果在這些原則所指名的方向上思考,可以確實的讓人少走上許多冤枉路。上網特別研究了在書中提到的幾項設計原則之後,留下了此篇紀錄。(六項原則:SRP、OCP、LSP、ISP、DIP、LKP)

閱讀更多»