編碼的世界 / 優質文選 / 財富

如何創建一個 Windows 桌面應用程序?


2022年7月07日
-   

工具:Visual Studio 2017 Community   在大學期間,不過學習 C/C++ 還是 Java,每次寫的程序都是控制台黑框框,有時候想設計一個可視化的應用程序卻不知從何下手,大學裏面的課程也沒有 Windows 程序設計相關,有點苦惱。本文就這個問題分享一下創建 Windows 桌面應用程序的兩種途徑。   創建 Windows 桌面程序有多種技術,但是哪種比較適合自己呢?在我的大學課程中,沒有關於 Windows 程序設計的課程。但由於機緣巧合,接觸到了 MFC,對 Windows 桌面編程有了了解。我還使用過 Java 創建 Windows 應用程序,當時使用的 IDE 是 Eclipse,在Eclipse 中裝相應的 Windows 插件,也可以創建 Windows 可視化桌面應用程序。但是今天,主要分享一下微軟官方推薦的創建 Windows 桌面程序的技術。   本文指的 Windows 桌面程序是指傳統的桌面程序,比如 Word,Excel,PowerPoint,Photoshop等。近幾年,微軟一直在推他的新技術——通用桌面程序。這種程序編寫好之後可以運行在 Windows 電腦、平板、手機上。不過 Windows Phone 已經涼了,微軟爸爸已經拋棄了它。
1、 選擇 C++ 和 Win 32 API 來開發 Windows 桌面應用程序,使用語言是 C/C++;   C ++在各種平台(Windows和非Windows)上提供一流的開發體驗,而不依賴於.NET等高級運行時環境。這使得C ++成為便攜式應用程序的首選語言,當這些運行時不可用或對某些目標平台來說太重量級時。   使用C ++和Win32 API可以通過更嚴格地控制目標平台來實現最高級別的性能和效率,而不是.NET運行時允許的。但是,對應用程序的執行進行如此高級別的控制需要更加謹慎和關注才能正確運行,並為運行時性能交換開發效率。   以下是C ++提供的一些亮點,可幫助您構建高性能應用程序。  硬件級優化,包括嚴格控制資源分配,對象生存期,數據布局,對齊,字節打包等。  通過內部函數訪問面向性能的指令集,如SSE和AVX。  使用模板進行高效,類型安全的通用編程。  高效安全的容器和算法。  DirectX特別是Direct3D和DirectCompute。  C ++ AMP
2、 選擇 .Net 來開發 Windows 桌面應用程序,使用語言有 C#,C++,F#,VB。   .NET在桌面,Windows Phone和Windows應用商店中提供一致的一流開發體驗。它提供更高級別的編碼和生產力。.NET允許您在桌面上繼續開發基礎應用程序並添加令人興奮的新體驗,同時使用您現有的技能並在設備之間重用代碼。如果您希望在任何設備上創建更加量身定制,適合平台的體驗,Visual Studio行業合作夥伴(VSIP)提供的解決方案可以在非Windows設備上重用C#技能和代碼。   除了您期望的功能(如文件/流和網絡通信)之外,以下是.NET提供的一些重點,可以使構建應用程序非常高效:  運行時生產力和安全性,如自動內存管理,類型安全,異常處理和線程管理  GUI技術見下文  豐富的集合數據類型  數據建模(ADO,LINQ,WCF數據服務)  語言集成查詢(LINQ)  日期和時間庫  序列化  網頁服務  安全和加密  並行編程庫
結論 您可能對C ++或C#/ Visual Basic具有強烈的親和力,這可能決定您選擇編寫桌面應用程序的方式。使用.NET / C#(或Visual Basic)進行高級編碼,提高工作效率,豐富框架和服務,支持現代客戶體驗,跨平台維護資產(Windows應用商店應用,Windows Phone應用,Windows桌面應用等) )。當您需要實現最高級別的性能,明確地管理資源或內存布局,訪問硬件級優化機會,當您希望應用程序可移植到沒有平台時,可以將本機C ++用於遊戲和其他圖形密集型應用程序.NET運行時,或者更容易利用存在的免費可用的高質量C和C ++庫。 以上引用資料來源:https://docs.microsoft.com/zh-cn/windows/desktop/choose-your-technology

公眾號:藍冰軟件實驗室

熱門文章