放下VS2010,擁抱VS2019

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

過去幾年一直使用 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 須要手動選擇纔會安裝,以後的版本(VS201七、VS2019 預覽版)也是如此。app

試用 .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
本文連接: http://www.javashuo.com/article/p-stplaufg-gr.html
版權聲明:本博客全部文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明出處!

相關文章
相關標籤/搜索