今天看到幾大公衆號聯合送書,有算法、python、容器、Spring等相關的書籍,其中有一本 << VC++深刻詳解>> 顯得有點不同凡響,引發了個人注意,觸發了點滴回憶……html
遙想多年之前,這本書也是個人入門書籍之一,有了電腦後,裝了開發環境嘗試編譯書中的例子,今後開始了 MFC 的入坑之路。時至今日,在工做中還在用,或許將來的一段時間裏還要繼續使用。python
雖然我還在使用,可是對於以前沒接觸過 MFC 打算學習的人來講,建議仍是不要學了。不過在今天這個時代,打算學習的人想來不會太多,畢竟如今是雲、大數據、萬物互聯的時代,大多數人都在學 Java、Python、Docker 及其相關的技術。雖然我心裏強大,但想到此處仍是不禁得有些落寞……算法
若是不學 MFC,那打算開發桌面客戶端使用什麼技術呢?微信
若是使用的語言是 C++,建議使用 Qt;若是使用的語言是 C#,建議使用 WinForm。下面從不一樣的方面作些簡單的比較:app
開發環境:Qt Creator 是 Qt 的官方開發環境,可是在我短暫的使用過程當中仍是以爲的 VS 比較好用,經過官方提供的 VS 插件,搭配熟悉的 VS 就是最優的 Qt 開發環境。界面設計方面,Qt 的設計器和 WinForm 的設計器都比較好用。學習
基礎類庫:有了豐富的基礎類庫,才能提升開發效率。在這一點上 Qt 和 .NET(WinForm 只是其中的關於界面的部分)都含有各類各樣的類庫來知足不一樣的開發需求。大數據
資料豐富:Qt 和 WinForm 都有很是豐富的資料,不管是官方提供的技術文檔,仍是已經出版的技術書籍。spa
跨平臺:Qt 是基於 C++ 的跨平臺的庫,而 WinForm 只能在 Windows 平臺使用。(固然在其它平臺可使用 .NET 的開源實現版本 Mono,Mono 是由 Xamarin公司開發的跨平臺 .NET 運行環境,已被微軟收購,而官方的 .NET 也已開源。)插件
是 Qt 仍是 WinForm,更多的可能仍是要根據工做的不一樣需求來定。若是還沒參加工做,能夠都瞭解下,而後根據我的喜愛進行選擇。這些都是界面相關的部分,在學習這些的同時,還要學習軟件開發相關的其它通用的知識,而這些纔是須要更加關注的地方。設計
回到 MFC,爲何不建議學習它?簡單說下個人 3 個理由:
MFC 是微軟建立的類庫,而如今微軟已經將其放棄。多年再也不更新,且新版本的 VS 默認再也不安裝(我安裝的版本中 VS2015 已經默認再也不安裝)。
基礎類庫:前面提到過有了豐富的基礎類庫,才能提升開發效率。而MFC 只是對 Win32 的封裝,類庫不豐富。
界面資源:使用 MFC 開發界面時,產生的界面資源都存儲在 .rc 文件中,控件 ID 都存儲在 resource.h 中。多人開發進行合併時容易產生 ID 衝突等問題。並且因爲資源都是存儲在一個文件中,已開發的界面難以複用。
除了 MFC、Qt、WinForm,還有其它一些桌面客戶端開發技術:
- - - End - - -
本文做者: Lzl678
本文連接: http://www.javashuo.com/article/p-gendkhqv-gp.html
版權聲明:本博客全部文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明出處!