別學MFC了,要學就學這些

2022-09-17 05:57:09 字數 1165 閱讀 8791

遙想多年以前,這本書也是我的入門書籍之一,有了電腦後,裝了開發環境嘗試編譯書中的例子,從此開始了 mfc 的入坑之路。時至今日,在工作中還在用,或許未來的一段時間裡還要繼續使用。

雖然我還在使用,但是對於之前沒接觸過 mfc 打算學習的人來說,建議還是不要學了。不過在今天這個時代,打算學習的人想來不會太多,畢竟現在是雲、大資料、萬物互聯的時代,大多數人都在學 j**a、python、docker 及其相關的技術。雖然我內心強大,但想到此處還是不由得有些落寞……

如果不學 mfc,那打算開發桌面客戶端使用什麼技術呢?

如果使用的語言是 c++,建議使用 qt;如果使用的語言是 c#,建議使用 winform。下面從不同的方面做些簡單的比較:

開發環境:qt creator 是 qt 的官方開發環境,但是在我短暫的使用過程中還是覺得的 vs 比較好用,通過官方提供的 vs 外掛程式,搭配熟悉的 vs 就是最優的 qt 開發環境。介面設計方面,qt 的設計器和 winform 的設計器都比較好用。

基礎類庫:有了豐富的基礎類庫,才能提高開發效率。在這一點上 qt 和 .net(winform 只是其中的關於介面的部分)都含有各種各樣的類庫來滿足不同的開發需求。

資料豐富:qt 和 winform 都有非常豐富的資料,無論是官方提供的技術文件,還是已經出版的技術書籍。

跨平台:qt 是基於 c++ 的跨平台的庫,而 winform 只能在 windows 平台使用。(當然在其它平台可以使用 .net 的開源實現版本 mono,mono 是由 xamarin公司開發的跨平台 .net 執行環境,已被微軟收購,而官方的 .net 也已開源。)

回到 mfc,為什麼不建議學習它?簡單說下我的 3 個理由:

mfc 是微軟建立的類庫,而現在微軟已經將其放棄。多年不再更新,且新版本的 vs 預設不再安裝(我安裝的版本中 vs2015 已經預設不再安裝)。

基礎類庫:前面提到過有了豐富的基礎類庫,才能提高開發效率。而mfc 只是對 win32 的封裝,類庫不豐富。

介面資源:使用 mfc 開發介面時,產生的介面資源都儲存在 .rc 檔案中,控制項 id 都儲存在 resource.h 中。多人開發進行合併時容易產生 id 衝突等問題。而且由於資源都是儲存在乙個檔案中,已開發的介面難以復用。

除了 mfc、qt、winform,還有其它一些桌面客戶端開發技術:

- - - end - - -

別因為要學的太多反而壓垮自己

自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體開發領域,有如此多的新技術,有如此多要學習的東西,我們在學習中會感覺被完全壓垮了。你感覺你一直在扮演追趕的角色,但是一直都趕不上。就像是跑步機一直比你能跑的最快速度還要快幾步,你一直受挫,還有在最後關頭掉隊的危險。問題就是嘗試學太多導致的...

別因為要學的太多反而壓垮自己

別因為要學的太多反而壓垮自己 摘要 自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體開發領域,有如此多的新技術,有如此多要學習的東西,我們在學習中會感覺被完全壓垮了。你感覺你一直在扮演追趕的角色,但是一直都趕不上。就像是跑 自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體...

千萬別學英語

前天買了乙個小石頭 給兒子聽故事,我順便拿來在班車上聽聽英語。在找英語 時,看到一篇 千萬別學英語 的文章,覺得寫得不錯,做個摘要。這是乙個南韓人寫的學習英語心得。所謂 千萬別學英語 是反對按照傳統的背單詞 精讀的方法學英語。作者認為不應把英語當作課程學習,應該把英語當作交流工具去熟悉。作者建議按以...