c++為什麼適合桌面軟件開發?

吉吉吉好多吉


為什麼C++適合桌面開發?原因很簡單,因為它運行高效啊。作為一名一線開發者,下面介紹下常用的C++開發過程中常用的界面庫。


01 Qt

C++界面開發首選的UI庫——QT,一套跨平臺C++圖形用戶界面應用程序開發框架。既可以開發GUI程序,也可用於開發非GUI程序。文檔齊全,API設計優雅,原生態跨平臺支持,在國產化盛行的今天,相信Qt的市場也會越來越廣闊。


Qt新版本提供的QSS可以讓你像Web當中CSS那樣優雅的寫界面佈局代碼。下圖是使用Qt內置的QSS繪製的一個界面換膚效果圖,還是很絢麗的(PS:作品來源於CSDN,博主:一去丶二三里,如有侵權,請隨時聯繫)。

02 MFC

坊間流傳MFC=沒飯吃,在十幾年前就在叫囂MFC要被徹底淘汰了,但是,時至今日,它還是沒有淘汰,只能說是落幕了,需求越來越少,就連起親爹微軟都已經將MFC拋棄。

如果你處於學生時期,選擇了C/C++方向,建議瞭解MFC思想即可,無需花費太多精力在這種老古董上面;

如果你已經工作了,很不幸維護工作內容是MFC相關的遺留老項目,那麼只能建議你自求多福,下班時間多學習些其他知識,早日加薪跳槽吧。

03 以Duilib、BCG等為代表的第三方界面庫

限於篇幅,這裡重點談下Duilib,一款Windows下免費開源的DirectUI界面庫,由於簡約易擴展的設計以及穩定高效的實現被各大互聯網公司普遍接受,廣泛應用於包括IM、視頻客戶端、股票行情軟件、導航軟件、手機輔助軟件、安全軟件等多個行業的眾多pc客戶端軟件。比如大家每天都在用的「微信」、「盤古越獄工具」、「愛奇藝」等等。

下圖是基於Duilib開發的一款仿迅雷播放器的界面效果。

唯一的缺點就是目前作者已經不再維護該項目了,或多或少會有一些坑在等著你,而各大公司在內部使用過程中都是維護其自己的特有 版本。


本文為作者“一個程序員的奮鬥史”悟空問答原創文章,未經允許轉載、抄襲必究!

一個程序員的奮鬥史


C++適合桌面開發?這個不見得,要看是什麼系統了,如果是Windows系統,那麼C#或Delphi可能更合適,如果考慮到性能和跨平臺性,那麼Qt等C++框架可能更合適,下面我分別簡單介紹一下,感興趣的朋友可以嘗試一下:

01

C#

這應該是目前Windows平臺下使用最廣泛的編程語言了,在桌面軟件開發中一直佔據著非常重要的位置,尤其對於信息管理系統來說,可以說是非常合適,自帶有圖形用戶設計界面,只需簡單拖拽控件,編輯屬性,就可快速開發一個GUI可視化界面,支持各種主流數據庫開發,包括MySQL、Oracle、SQL Server等,如果你需要快速開發一個適合於Windows平臺的桌面應用,那麼C#無疑是首選:

02

Delphi

這是Windows平臺下一個使用廣泛的桌面應用程序開發工具,在早期的Windows桌面開發中,Delphi一直佔據著主導地位,使用率和普及度非常高,相對於沒有任何編程基礎的開發人員來說,Delphi學習成本低,簡單易學,容易上手,只需簡單拖拽控件、設計屬性,就可快速創建一個GUI程序,編譯、開發、調試效率非常高,不過隨著C#的興起,Delphi的應用範圍有些縮減,但對於桌面開發來說,也是一個利器:

03

Qt

這是一個免費、開源、跨平臺的桌面應用程序開發框架,基於C++開發而來,在目前跨平臺的桌面應用中,有著較為廣泛的使用率(MFC就不提了,較為老的框架了,而且僅限於Widows平臺),簡單易學,容易上手,而且UI界面設計非常不錯,可以基於CSS進行美化,如果你有一定的C++基礎,考慮到跨平臺性和性能,可以使用一下這個框架,非常不錯,值得學習:

目前,就分享這麼多吧,C++到底是否適合桌面軟件開發,這個不好說,要考慮到實際平臺和需求,而且對於大型桌面應用來說,可能不僅僅只是一種開發語言,網上也有相關資料和教程,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。


小小猿愛嘻嘻


從事軟件十幾年簡單的認為C++適合桌面軟件開發不是很合適,C++就是一種編程語言而已,在當今主流的軟件中適合桌面編程的有C#和Qt體系,早期的Delphi用的比較多,現在桌面軟件的開發已經被微軟的C#取代了。這是和編程生態發展態勢決定的,因為微軟主導操作系統,推出桌面軟件開發生態也是順理成章的事情,當然開源的QT還是受到很多開發者的喜愛,單純的說一種編程語言是不是能夠適合某方面的開發意義不是很大,裡面包含著很多生態因素。

從事C++編程開發多年,今天就自己對C++這門編程語言的認知給大家做個簡答的介紹,C++這門編程語言在實際應用的廠家如何,以及在未來編程序列中處於一個什麼地位。

C++應用幾個方向

客戶端引擎框架的基礎編程語言。C++因為其高效性還是很多開源框架首選編程語言,現在的安卓系統中間框架層就是C++和java共同完成的框架,現在安卓框架從性能角度考慮已經向著C++邁進了,從框架和以及性能上考慮C++還是最佳的選擇,但是C++相對來講入門還是有點困難,對於初學者來講相對比較困難,直接學了C++找份合適的工作還是有點困難,但是這門編程語言還是很多架構師的最愛。主流的瀏覽器引擎chromium也是由C++編寫完成的,可見在編程領域C++還是客戶端打造引擎的首選編程語言。

端遊開發。在講求性能的遊戲開發C++用的依然很多,在遊戲開發團隊基本上都有專門的性能優化團隊,其中很大一塊就是在優化C++標準調用庫,因為遊戲中對算法以及實時的響應哪怕是一點一滴的優化都會帶來整體提升,而且優化遊戲底層框架的程序員一般來講工資待遇都會非常高,也不是一般程序員能幹的活。

桌面軟件開發。像Qt對於C++語法的依賴還是非常大,玩轉Qt必須對C++的基本語法有深刻的瞭解,因為在函數調用過程中用的都是C++的語法,相當於需要具備Qt常見控件的使用方法加上C++必備語法才能玩轉這塊編程。微軟的C#也是採用面向對象的編程方式,如果是理解了C++編程語言再去學習就會簡單許多了,因為C#相當於集成了很多C++底層的功能,使用起來更加方便快捷。

底層性能模塊。這塊沒有單獨的行業限制,比如現在的人工智能入口語言用的是python,但在涉及到性能模塊會用到C/C++,很多服務器後臺處理模塊也會用到C/C++編程,涉及到性能的模塊底層實現離不開C/C++。

C++未來發展趨勢

雖然現在很多人對C++繁雜的語法表示非常,但是性能和編程思想還是很多人編程老手的最愛,在很多領域還是首要選擇,初學者第一次接觸C++依然還會感覺無助,磨合的時間越長感覺起來越是親密,就是這麼一種編程語言,但從未來的趨勢看雖然市場佔比可能在下降但是在重要性並沒有因此而下降,希望能幫到你。


分享到:


相關文章: