1.前言
2023年,UI設計大前端時代,360安全衛士軟體界面依舊采用Visual C++ 編寫界面,小編認為主要原因是:Windows系統版本之間的相容性、程式運作速度快、使用者體驗好、性能穩定、記憶體使用空間占用極小等特性,而這恰恰是Visual C++ MFC開發架構的優勢,大家印象中的MFC很難實作漂亮美觀的界面,而實際上熟練的Visual C++程式員也可以輕松實作非常漂亮的界面,并且經得起時間的錘煉成為經典耐用的好産品,好比蘋果的IOS系統采用C++使用者絲滑體驗永遠快Android一步。
圖1、大家印象中的WinUI/WPF/WinForm/MFC界面對比圖
圖2、基于Visual C++編寫的360安全衛士界面
2.Visual C++與MFC架構概況
Microsoft Visual C++(簡稱Visual C++、MSVC、VS或VC)是微軟公司的免費C++開發工具,具有內建開發環境,可提供編輯C語言,C++以及C++/CLI等程式設計語言。VC++內建了便利的除錯工具,特别是內建了微軟Windows視窗作業系統應用程式接口(Windows API)、三維動畫DirectX API,Microsoft .NET架構。
MFC (Microsoft Foundation Classes)是微軟基礎類庫的簡稱,是微軟公司實作的一個C++類庫,主要封裝了大部分的windows API函數,Visual C++是微軟公司開發的C/C++的內建開發環境,所謂內建開發環境,就是說利用它可以編輯,編譯,調試,而不是使用多種工具輪換操作,靈活性較大。VC也指它的内部編譯器,內建開發環境必須有一個編譯器核心。
MFC除了是一個類庫以外,還是一個架構,在VC++裡建立一個MFC的工程,開發環境會自動幫你産生許多檔案,同時它使用了mfcxx.dll。xx是版本,它封裝了MFC核心,是以你在你的代碼看不到原本的SDK程式設計中的消息循環等等東西,因為MFC架構幫你封裝好了,這樣你就可以專心的考慮你程式的邏輯,而不是這些每次程式設計都要重複的東西,但是由于是通用架構,沒有最好的針對性,當然也就喪失了一些靈活性和效率。但是MFC的封裝很淺,是以效率上損失不大。
表1、MFC開發架構的優劣勢
優勢 | (1)程式占用空間小 編譯的可運作程式可小至幾Kb 位元組,運作記憶體占用也極小。 (2)性能優異 MFC封裝了Win32API,OLEAPI,ODBCAPI等底層函數的功能,并提供更高一層的接口,簡化了Windows程式設計。同時,MFC支援對底層API的直接調用。 (3) 相容性強 适用于微軟系列所有作業系統,包括:Windows XP/Vista/7/8/10/11/12、Windows Server 2002/2003/2008/2012/2022、Windows Embedded等各個用戶端和服務端版本系統。 (4)運作環境要求低。 可用于64M記憶體以上各種環境,譬如:基于arm晶片的Windows CE嵌入式系統等。 |
劣勢 | 1. 門檻相對較高 2. 開發效率較低 3. 美化界面較難。 |
主要應用場景:對性能要求高和使用者體驗好的場景,常應用于工業控制、醫療影像、機器人、AI算法、音視訊、系統工具等領域。
3. Visual C++ 項目開發
Microsoft Visual C++ 6.0是最為經典的一款IDE,經久不衰,研發的産品生命力極其頑強,以緻于Microsoft Visual C++ 2022仍保留原界面風格,後續功能更新較少。
圖3、Visual C++ 6.0軟體啟動界面
圖4、Visual C++ 6.0建立項目界面
圖5、Visual Studio 2022軟體啟動界面
圖6、Visual C++ 2022 建立項目界面
4. Visual C++ 項目界面美化
為了讓軟體能在視覺上給使用者帶來一種清新的感覺,進而避免潛在的使用者視覺疲勞和審美疲勞,軟體一般都要經過專業的界面設計和美化。
圖7、Visual C++ 項目界面布局示例
圖8、Visual C++ 項目界面美化後運作圖
圖9、Visual C++ MFC軟體界面美化示例圖
5、結束語
Visual C++ / MFC的世界,仍受不少IT專家和程式員的喜愛,在無論是否技術落後或沉幕,都應該理性對待樂觀面對,選擇适合企業戰略要求的軟體開發架構才是最佳選擇。認真總結和分析曾經作品的缺陷和存在的不足之處,客觀面對研發思路和存在的差距,别在意一時之得失。對自己要有足夠的信心,堅信自己的選擇,做到在創作中不斷學習和成長進步,才能在今後的創作中做出好作品,改變目前被動的現狀。