2010-09-21 50 views

回答

0

研究。

閱讀大量的說明,找到大量的例子。

1

無論如何,如果你決定閱讀GOF書。編寫書中的例子。練習很多,然後事情變得更容易和更容易。

3

嘗試使用this SO鏈接爲例。這對我來說真是棒極了..

1
  1. 你需要得到理論的理解,什麼是關於推理和主要當一個給定的模式應適用
  2. 代碼你自己的例子。你需要練習。根據我的經驗,直到你首次在實踐中使用它,你纔會明白一個模式(足夠深入)。

注意,永遠不要試圖強迫自己實現模式,只是因爲你想擁有它,或者「因爲它似乎是‘酷’來使用它。在大多數情況下,這隻會增加複雜性。圖案應該自然地融入你的代碼,並給你帶來好處,例如可重用性,可測試性更高,更好的可維護性,...

一般來說,雖然,我發現學習模式提高你的編碼能力有了顯着。

玩得開心

1

設計模式可能很複雜,我見過很多人誰誤解了一些細節,因爲他們看不到的一些模式以及在何處使用它們之間的diffence人。

您可以從網上的書籍,演員表或教程中學到很多東西。任何編程語言或工具上的一些最好的實踐,去網上。但是在設計模式上,找一個有時間的高級開發人員。跟他說話,讓他解釋一下。向他展示一些代碼並詢問他,哪種模式可以讓你的生活更加輕鬆。這可能比讀書更有助於你。

1

過去幾天我一直在說這很多,但是讀了these 2 ebooks,大量關於如何設計/開發/改進代碼的很好的信息。

恕我直言,爲什麼很容易與所有不同的模式鬥爭,當你看到他們作爲很多不相關的部分,沒有共同的目標。以上關於SOLID的電子書更多的是涉及到的原則,所以你可以看到一個清晰的故事,說明你獲得了什麼。

0

所有設計模式都基於非常基本的原則。

如果先花時間先了解的基礎知識,然後你甚至不需要學習任何設計模式,因爲如果你遵循的基本原則,你會得出同樣的答案,因爲設計模式。

開始與S.O.L.I.D principles.

它們是:

SRP - The Single Responsibility Principle
一類應該有一個,且只有一個理由去改變。

OCP - The Open Closed Principle
您應該可以在不修改它的情況下擴展一個類的行爲。

LSP- The Liskov Substitution Principle
派生類必須可替代其基類。

ISP - The Interface Segregation Principle
使細粒度的接口是客戶特定的。

DIP - The Dependency Inversion Principle
取決於抽象,而不是結核。

享受你的旅程。