1. 程式人生 > >C++介面庫的抉擇

C++介面庫的抉擇

C++的介面庫經過幾天來的搜尋,總結了下面幾種的優缺點

1. MFC

   優點:VS2008以及VS2010的擴充套件確實很強大,特別是原生的視窗執行時停靠以及PropertyGrid確實很強大

   缺點:預設字型很模糊,無論你對MFC多瞭解,C++多熟悉,每次寫程式碼時依然要重新熟悉程式碼,更不用提分析別人寫的MFC程式碼,一個字:亂。

2. WTL

   優點:Windows下有個最好的例子:Google Chrome

   缺點:缺乏設計器,文件例子很少

3. wxWidgets

   優點:虛幻3編輯器在用(不是廣告),wxAUI的佈局設計器很方便,Windows原生介面很舒服,各種功能封裝都很到位。

   缺點:佈局沒有類似GTK+的Fixed絕對座標方式(Windows SDK預設的左上角畫素定位方式),在某些介面顯得設計麻煩。 動態連結庫多的嚇人,工程過於臃腫。

4. Qt, GTK+

    據說Windows下不是很好用。

5. DirectUI

    有很多個人封裝類似功能的庫。介面,程式碼分離, 但99%都是收費

6. C# Windows Form

    這是很好的選擇,語言方面可以用C++/CLI 免得轉換語言

   自由停靠功能可以使用WeiFenLuo.winFormsUI.Docking 非常簡單

7. WPF

   有童鞋已經使用MFC/C++通過載入XML顯示介面,不過通過資料顯示,WPF的控制元件很少,甚至連原生的PropertyGrid都沒有,設計器倒是很華麗

總結:介面庫的選擇最重要的一點就是看有沒有很好的設計器,這個是高效開發的重中之重。我尊重MFC,敬仰MFC,它作為C++的框架庫來說很不錯,但是對於介面設計還是過老了。我們開發的是產品,出的是程式,而不是研究MFC,怎樣用好MFC。