2010-10-16 66 views
9

感謝您寶貴的時間。詳細學習C++設計模式

我想學習C++設計模式。我在網上搜索,但我沒有收到文件,這些文件給了我更多有關設計模式的細節。我得到了很好的細節,但是這些細節都在不同的URL中,我只需要在一個地方提供所有信息,以便知道C++設計模式下的所有東西會更好。

下面是我需要的東西,而學習設計模式:

  • 我們爲什麼需要C++設計模式
  • 什麼是設計模式
  • 他們是如何分類的(我的意思是概述,我們可以說)
  • 實現這些模式的好方法
  • 優缺點設計模式
  • 新功能s的設計模式。

請大家建議我包括上述幾點好東西。另外建議我,有沒有什麼好的論壇可用於設計模式。

感謝您的建議!

-Pravin

+0

http://en.wikibooks.org/wiki/C++_Programming – Anycorn 2010-10-16 07:28:28

+0

爲什麼你想學習C++設計模式? – fredoverflow 2010-10-16 10:26:40

+0

@FredOverflow:是的......在閱讀技術文檔後,我得知道,設計模式是常見的概念......我認爲C++中有些主題是不同的(實施方式) – pravin 2010-10-19 07:16:13

回答

6

Vince Huston有一個粗略的網站......但它整齊地說明了所有設計在C++中的GOF書中提到了模式。

Check it out :)

每個模式呈現幾個部分:

  • 名(感謝婁指出來:P)
  • 意圖
  • 問題(它解決)
  • 結構概要(附圖)
  • 討論
  • 結構(有一個粗略的示意圖)
  • 例如
  • 檢查表(讓你知道什麼時候運用它)
  • 前/後(看到它在行動)拇指
  • 規則(與其他模式比較,爲什麼它們不同,它們如何組合)

它非常完整並且非常方便的參考,儘管一旦您創建了一個模式,您應該能夠想出一個實現一切由你自己,甚至在模板中混合:)

+0

不要忘記「名稱」 - 這是最重要的部分。這個名字有助於傳播這個想法並使其易於討論。 – 2010-10-18 23:07:06

+0

@Lou Franco:對,沒有一個正式的名字,其餘的只是一堆信息:) – 2010-10-19 07:07:25

+0

@Lou Franco和@Matthieu M. - 你不能在你的簡歷中放一堆信息,但你可以把'專名' - 這非常有用:) – ra170 2011-02-03 18:11:03

0

設計模式是一般不專門針對某一語言,所以我建議你谷歌具體的設計模式,如調解模式,外觀模式,等等......有23種基本模式。

真的,這取決於你對程序的意圖,你決定了什麼樣的模式。有很多好書,詳細討論每種模式與現實生活。

請仔細閱讀谷歌有關原書「設計模式:可重用面向對象軟件的元素」的書籍,以供深入討論。

0

我完全同意JD的觀點,許多有價值的設計模式都不是特定於語言的。

但是,模式的實現通常是語言特定的。我發現Alexandrescu的書「現代C++設計」非常有趣的,看看他如何使用C++模板來實現的模式,如單身,遊客等

0

在以前的問題,我遇到了sourcemaking,至少在這裏,有一個很好的基本設計模式(和反模式)的概述。我不知道1個完整的設計模式概述,所以我想,我會在這裏檢查一個更好的答案...