放下VS2010,擁抱VS2019


VS2019 再過幾天就要正式發布了,我們還在使用 VS2010 進行軟件開發。由於所處行業環境及項目類型,加之之前的代碼積累,所以即使不用新的開發環境、新的語言技術也能比較好的完成工作。那究竟要不要使用新的開發環境、新的技術呢?答案當然是肯定的。

過去幾年一直使用 VS2010 進行開發,使用 MFC 作為界面框架,使用 C++ 中的容器、算法,使用 C 線程處理多線程,使用 Win32 中的臨界區、Event、Mutex 等處理線程間通信,使用 boost 中的部分組件(如 bind、function、signals2 等)等。多年過去,是時候做些改變了。

學習 C++11

C++11 已經推出多年,現在每三年一個標准,C++14C++17 已制定完畢,C++20 也在路上。一味追隨新技術只會讓自己陷入疲憊和迷茫,但對於比較成熟的技術還是要不斷學習、嘗試使用,同時保持對新技術的關注。

VS2010 已經提供了部分 C++11 的功能,如 auto、nullprt、std::shared_ptr、std::unique_ptr、部分 lambda 等功能,但其它如 foreach、容器初始化、多線程庫、原子庫、正則表達式庫等大部分功能並沒有包含。雖然這些可以使用 boost 中提供的相關庫(C++11 中的很多功能源自 boost),但新的開發環境顯然提供了更完善的支持,從編寫、編譯、運行調試等各方面都能夠提升編碼體驗。

放棄 MFC

MFC 是微軟提供的 Windows 桌面開發框架,主要使用面向對象思想對 Win32 API 進行了封裝以便能夠快速開發桌面程序。從 92 年發布距今已經 27 年,還在使用的人想必不會太多,願意花時間學習的就更少了。

MFC 問世時,C++ 的標准(C++98)還在制定中,模板及模板元編程也還沒出現。隨着 VC6 的成功 MFC 也火了一段時間,在 VS2010 中也加入了大量的新組件(相關類以 CMFC 開頭,其實是集成了 BCG 庫),在此之后再也沒有大的改進。

在安裝 VS2010 時,MFC 還是默認安裝的,在安裝 VS2015 時,MFC 需要手動選擇才會安裝,之后的版本(VS2017、VS2019 預覽版)也是如此。

試用 .Net Core

過去微軟主推 .Net 技術,現在主推 .Net Core 技術,.Net 的桌面開發技術 WinForm、WPF 也已移植到 .Net Core 中。利用 .Net 龐大的基礎類庫,使用 C# 的諸多語法特性,借助 VStudio 的智能支持,使用 WinForm 能夠更加快速的開發桌面程序,而且更易維護。

所以是時候放棄 MFC,轉而使用新的開發框架了。

使用 VS2019

.Net Core 作為微軟新一代技術平台,已經發展多年,完全開源、跨平台(WinForm、WPF 只支持 Windows 平台)。使用跨平台軟件 VS Code 可以直接在各平台上進行開發並能獲得一直的開發體驗,只是若要使用 .Net Core + WinForm 進行桌面軟件開發,還是使用 VStudio 更加便利,而這些在 VS2019 中才有更好的支持。

小結

在使用 VS2010 時,她是最新的開發環境、C++11 標准還沒被各大廠商支持、微軟還不是現在的微軟(以前閉源,現在開源)、.Net Core 還沒問世,我們使用的也是當時的新技術。隨着時間的推移,各項技術(開發工具、語言)都又有了進一步的發展,我們也需要重新選擇。只有不斷的學習才能不斷的進步。

- - - End - - -


歡迎掃碼訂閱我的微信公眾號,以獲得最佳閱讀體驗。
歡迎掃碼訂閱我的微信公眾號,閱讀其它相關文章。

本文作者: Lzl678
本文鏈接: https://www.cnblogs.com/Lzl678/p/10618429.html
版權聲明:本博客所有文章除特別聲明外,均采用 CC BY-NC-SA 4.0 許可協議。轉載請注明出處!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM