如今 Windows 軟體開發究竟該用什麼庫,C Qt,還是其他?

時間 2021-05-11 19:15:37

1樓:database

既然是win平台視窗程式,古老而經典的delphi7是最適合的。。。。

開發快,執行快,部署快。

結果小,一般乙個exe搞定,只需要幾百K!只是不流行了。

尤其適合個人工具性、網路相關的win32桌面軟體的開發。

當然,對於外出找工作基本是沒有幫助了

2樓:戮世帝尊

看你是否考慮跨平台,如果完全絕對不會考慮跨平台的話,用C#肯定是第一選擇,上手快,任何問題查資料都很方便,畢竟是windows上的親兒子嘛。

如果你考慮跨平台,就看你開發的應用是否很重,如果是非常重的應用,還是推薦使用QT,但是QT最大的問題就學習成本,相對更高,而且開發效率相對更低。

electron算是現在開發windwos上開發很方便的乙個框架,前段人員基本上乙個星期的學習就可以上手,關鍵是開發起來相對很快,基於electron框架開發的成熟應用也非常多,而且electron的跨平台也做的非常好,我們專案組之前開發的幾個應用基本上ui都是用electron做的,部分核心功能點是用的C++來寫。

3樓:Cirno Scarlet

按照知乎主流價值觀,你居然使用windows,你居然還想開發windows下的軟體,你是異端中的異端,你應該被下油鍋1萬次。

4樓:Tawtg

C#的winform和wpf必然是首選,winform雖然是老技術,但是體積小,成熟穩定,常規應用相當合適,不存在效能問題,當然如果你要呈現一定的前台效果,用wpf就可以了。

如果你熟悉Python,原型設計階段推薦PyQt,方便快速迭代,設想乙個場景,對前台介面或者後台邏輯,在程式迭代過程中需要頻繁更新時Python的解釋特性就會方便很多,不需要像winform和wpf要重新編譯。

5樓:BK Lee

我也投QT一票,桌面軟體已經失去活力,可惜了。

各個樓層看了一遍,目前看,QT投票最高,高票活動Windows軟體開發首選庫。

6樓:周解夏

做為咳咳,非正經程式設計師來答一波。

作為winform,wpf,qt都用過的人,我覺得winform可以pass了,無他,這不是貶低,確實沒有後面兩個寫出來爽。說說wpf吧,去boss,51job上,工資都偏低,當然有高的。不過wpf拿來自己寫東西,那是真的爽,當然,只能在win上。

當然,最推薦的還是qt,有新書了,5.9版本的,手裡的那本可以墊桌子了。qt是真正可以跨平台的,你在win上編譯完,拿去mac,centos,Ubuntu上,都可以編譯,再建議學學cmakelists,跨平台編譯爽的....

然後在guthub上一開源,找工作槓槓的有木有。興趣和工作不一定要相同,但是互相助益那是再好不過了,逃:)

7樓:Xi Yang

如果是只在Windows上,那應當C#和WPF。

Qt也不錯,只要你不嫌它大。注意要用Qt Quick、看Qt5的資料,不要用Qt Widgets,前者是從頭來的新東西,比後者要動態得多。

8樓:

這些答題的,你們都不問做什麼軟體就瞎回答。

技術的選擇取決於專案的性質。你 QT 再好,.NET牛上天了,我要做個木馬,做個驅動,你試試看。

樓主想學Windows 系統知識就去學,不用在程式設計的時候學,效率低,也沒必要。要選擇適合你專案的工具。

GUI Qt4 我也有,上週才當廢品處理掉。當個入門也挺好,新出的書都沒這本好。不過它缺 Qt Quick 部分,可以看官方文件補一下。

9樓:司南

Qt吧,推薦學習最新版本的Qt5。

使用C++保證了足夠的運算效率,Qt的執行庫和vc++2010一樣安裝,動態編譯出來的程式最多幾兆。

10樓:圓胖腫

你糾結的原因是desktop已經涼了,而不是學什麼學什麼都改變不了desktop快涼了的事實而且desktop的os正在逐步增加中,fuchsia就快了,flutter馬上就要release了

等到fuchsia也跳出來之後,你看這些跨平台的腫麼辦desktop市場跟mobile市場同等重要顯然是不現實的現階段只能保mobile,然後坐擁mobile看著desktop而且desktop上玩家正在增加,本來就是乙個夕陽市場,又湧入大量的players

所以從長遠看,你學什麼都很難像你搞mobile一樣划算要我說,你還不如重點搞定佛拉特,然後desktop能多少是多少,業餘搞搞就是了

11樓:yaolx

要想簡單粗暴,可以試試他山框架.

支援windows,linux,android,使用gecko v52嵌入。

支援js/c++互動。

支援使用web開發滑鼠右鍵

支援列印及列印預覽

支援web透明渲染

支援xp,2003

可使用vs嚮導自動生成工程,自動化打包發布。

12樓:

說一下小公司技術選型。

小公司:

100% 選Electron

因為C#和C++不好招人。有個專案是WFC的。招人不好招。搞不定。

乙個技術Leader抽時間搞定JS的資料框架部分還是沒難度的。

剩下的頁面展示和樣式都直接可以復用已有的團隊。

Webkit有記憶體問題(js固有問題。攤手)。但畢竟不是伺服器軟體。實在不行了讓重啟客戶端一下。客戶表示一般能接受。

沒有特別困難的擴充套件問題。

第一。你可以寫Cpp。

第二。基本上擴充套件還是比較完善。畢竟瀏覽器把該做的都做了。

Electron 唯一選型困難的核心在不支援XP。這點是差點要放棄Electron的原因。我大清自有國情在。

後來技術老大說。可以選其他框架。得加人。然後上面就老老實實不說話了。

13樓:

首先先明確乙個問題,c#是一種語言,不是什麼庫,Qt是使用c++編寫的跨平台介面庫,二者沒有可比性。問題應該是,

其他我不懂,這裡就講述我用過的 .net庫和Qt庫,.Net平台包含的介面庫有很多,列舉如下:

Winform,老牌介面庫,穩定,但是設計介面麻煩,初級程式設計師做的介面庫都比較難看。

WPF,擁有11年歷史,使用Xaml語義進行介面介面程式設計,設計與實現解耦,豐富的動畫支援,介面做出來都比較好看。

...再看Qt庫,Qt庫編譯出來比較大一些是因為Qt不依賴任何Win API,拷到哪台機器都能執行,使用.Net介面庫則可能需要安裝相應Framework。

對比各種 .Net介面庫以及Qt庫,Winform實用,WPF美觀,uwp前沿,Qt強大。

考慮學習成本以及你Objective-C背景,建議使用Qt開發。

14樓:周roy

正好都用過MFC、qt、C# winform、C# wpf。說說看法。

1、做系統首先還是要考慮終端使用者的使用體驗和系統需求。如果使用者對系統效能要求比較極致,那麼用qt可能就不會錯。畢竟qt底層是C++,效能有保障。

當然,使用者對效能的需求是不是需要到拼語言的程度,這就看具體情況了。一般情況下,語言層面帶來的效能差異,大多可以忽略。

2、如果考慮學習成本和開發速度,那麼用winForm和wpf,一般情況下都會比qt快。qt底層是C++,記憶體管理、除錯等等都會比C#來的麻煩。

3、開發環境、除錯環境,顯然vs要比qt creator強。

4、winform和wpf這兩者各有千秋,微軟對wpf態度有些曖昧。winform比較成熟,微軟不再更新。利用第三方介面庫,兩者都可以做出比較美觀的介面。

qt在第三方介面庫上的選擇要少一些。

15樓:

C#的上手速度和開發速度都比Qt快得多,如果程式不太複雜,用Qt的還在學習階段,用C#的已經開發完了。

C++本來就比C#複雜得多,也不太適合做GUI(C++ Builder除外),所以選C#無疑。

16樓:法蘭克斯雪諾

有這糾結的時間你程式都寫完了

事實上c#,qt都是跨平台的。。。

現在的主流語言,框架和庫基本上都是跨平台的,學了你吃不了虧上不了當。。。

17樓:

我覺得要看你想開發哪方面的應用。

以我自己工作需要來說,主要是給客戶開發各種管理軟體。

我自己用Qt開發的乙個開發工具,帶介面設計器,Python做指令碼。Qt實現底層的封裝,Python專注於體現應用邏輯,所以開發起來很快速。

目前給客戶開發各種管理軟體都用它,最多的有一百多個客戶端。

自己要用的一些小工具也是用它來開發。

而且它還是跨平台的。

這是我的解決方案,供你參考。

我覺得用什麼都有道理,各有所長,就看你是要幹什麼,還有你要懂得怎麼好好利用它了。

學什麼技術也都可以,做程式設計師,保持好奇心,多嘗試,學什麼都是成長。

18樓:姚冬

在GUI開發領域就沒有完美方案,每個技術方案都有缺點,而且根據場景不同各自缺點的嚴重程度也不同。

所以我的意見是,反正哪個方案都有無數坑,你有能力填哪個的坑就用哪個吧。

比如我,C/C++水平足夠好,對Qt MFC都很熟,所以我敢用,有坑我能填,反正有原始碼,大不了自己去給它打補丁。

C# WPF不開源,遇到坑只能繞開了。

webkit JS,我不熟,遇到坑我是真沒辦法,所以謹慎選用。

大部分的坑是到了專案的中後期,使用者量大了才能發現的,那時你想換框架早就來不及了。

比如 Qt 的 trayicon實現有相容問題,大約有千分之幾的概率在Windows下托盤圖示會出不來,使用者量到了上百萬的級別你才能發現,所以後來我自己實現了TrayIcon。

Qt的字型快取當字型很多的時候非常佔記憶體,一位同事給Qt實現了帶記憶體壓縮功能的字型快取。

比較流行的框架,你遇到問題可以去搜尋,去問人,比較小眾的你到 Stackoverflow都找不到相關話題,只能自己搞定。

這就像有人總問魔獸世界裡哪個職業哪個天賦厲害一樣,沒有明確答案,因人而異,只能說你會用哪個哪個就厲害。

如果你問學哪個?既然你從iOS的 OC過來的,就學 C#吧!反正未來是屬於託管語言的。

19樓:安曉輝

如果喜歡C++的粗野和強大,那就首選Qt,首選,看書的話,就選我的《Qt Quick核心程式設計》和《Qt on Android核心程式設計》吧。

20樓:

既然你問出這個問題了,那麼肯定希望找個簡單方便的

那就沒有比.net更方便的了

很多人推薦wpf,我倒覺得沒必要,winform一樣很快速方便,在XP和win7冷啟動速度比wpf快很多,後面的windows下wpf需要的東西感覺已經被預熱了,沒那麼慢。 對。net版本要求低,反正等了解了過後再使用wpf一點不晚。

qt 也是個成熟的庫,但畢竟是個很特別的c++體系,入門應該是比較大的障礙。

vb6 以前也是神器,雖然是被拋棄的,還得用很老的ide,隨便寫點程式可以,深入學習沒啥價值了。

delphi 在當年也是很方便的東西,好多這樣子的程式,現在一樣沒啥價值了。

MFC 當年就很麻煩的東西,而且沒啥價值了。

electron 你有前端豐富的資產,那麼你可以用,做東西肯定靈活,但是代價就是體積大,前端開發技術不穩定,需要其他互動性。

labview 這算程式設計麼?

還有各種小而美的ui庫,你得能開發這個庫本身才能用好這類庫,基本沒有商業庫支援。

做程式語言和軟體開發Windows系統好一點還是蘋果Mac好一點?

我是電子狗,軟體也分是什麼軟體開發。如果是IOS開發,伺服器前後端開發,MAC上的應用開發,我覺得用買Mac沒啥毛病。但是除了IOS和Mac應用的開發,其實Windows或者linux都能幹。如果要搞深度學習,首選就是非Mac的,因為很多深度學習庫都不支援A卡,涼涼。嵌入式開發,FPGA開發,Mac...

軟體開發專案經驗??

Bingo 瀉藥。個人經驗是 興趣驅動。講道理我這種雖然是渣科班出身的,最後到了面試的時候派上用場的專案經歷都是自己瞎逼重新寫輪子整點興趣愛好弄的。題主雖然是非計算機專業,應該是想要長遠走下去吧。如果是我,我會選擇從基礎開始,找到乙個喜歡的方向,然後重新造幾個輪子 一句話總結就是 得耐得住寂寞。培訓...

為什麼軟體開發需要重構?

李超利 其實最核心的一點是 現在的邏輯不能有效快速的支撐未來的邏輯 我們要在何時的階段去小步迭代去補這個 技術負債 在系統開發之初,系統用例比較少,軟體的領域模型相對比較簡單,但是隨著系統用例的不斷增多,發現領域模型不能有效的支撐,隨即開發人員用錯誤的系統模型不斷的增加各種判定路由 標記儲存等去解決...