windows軟件開(kāi)發(fā)用什么編程語(yǔ)言(windows是用什么語(yǔ)言)
今天給各位分享windows軟件開(kāi)發(fā)用什么編程語(yǔ)言的知識(shí),其中也會(huì)對(duì)windows是用什么語(yǔ)言進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開(kāi)始吧!
本文目錄一覽:
- 1、如何開(kāi)發(fā)一個(gè)windows軟件,需要用哪些語(yǔ)言?
- 2、想開(kāi)發(fā)一款基于windows系統(tǒng)的桌面軟件,用什么語(yǔ)言?
- 3、開(kāi)發(fā)Windows平臺(tái)下的軟件用哪種編程語(yǔ)言比較主流比較好?
- 4、計(jì)算機(jī)編程語(yǔ)言的編程軟件需要什么語(yǔ)言?
如何開(kāi)發(fā)一個(gè)windows軟件,需要用哪些語(yǔ)言?
Windows軟件開(kāi)發(fā),不僅有C/C++、還有Java、C#,甚至JavaScript也加入了桌面應(yīng)用開(kāi)發(fā)的陣營(yíng)......
C++方向
作為一名主業(yè)為C++的開(kāi)發(fā)工程師,當(dāng)然是首推C++了,用它來(lái)寫(xiě)Windows軟件,還是很香的,這里重點(diǎn)推薦兩個(gè)界面庫(kù)。
Qt
這個(gè)也是C++界面開(kāi)發(fā)首推的UI庫(kù),是一套跨平臺(tái)C++圖形用戶界面應(yīng)用程序開(kāi)發(fā)框架。它既可以開(kāi)發(fā)GUI程序,也可用于開(kāi)發(fā)非GUI程序。文檔齊全,API設(shè)計(jì)優(yōu)雅,原生態(tài)跨平臺(tái)支持,在國(guó)產(chǎn)化盛行的今天,相信Qt的市場(chǎng)也會(huì)越來(lái)越廣闊。Qt新版本提供的QSS可以讓你像Web當(dāng)中CSS那樣優(yōu)雅的寫(xiě)界面布局代碼。
下圖是使用Qt內(nèi)置的QSS繪制的一個(gè)界面換膚效果圖,還是很絢麗的(PS:作品來(lái)源于CSDN,博主:一去丶二三里,如有侵權(quán),請(qǐng)隨時(shí)聯(lián)系)。
MFC
雖然業(yè)界流傳MFC=沒(méi)飯吃、MFC要淘汰了......但是這么多年過(guò)去了,這玩意還是沒(méi)有淘汰,只能說(shuō)是落幕了,需求越來(lái)越少(然鵝,并沒(méi)有絕跡)。
如果題主的需求是做一些自用的小工具,如果界面要求不是很高的話,那么選用基于MFC的Dialog對(duì)話框模式還是很方便的。無(wú)論是自用或者是他用,簡(jiǎn)單的將靜態(tài)編譯完成的exe發(fā)送給其他人就可使用,不用過(guò)多的依賴庫(kù)。
溫馨提示:
如果是選擇就業(yè)方向的話,不建議選擇MFC。
C#方向
微軟主推的編程語(yǔ)言,與宇宙第一IDEVisualStudio配合的天衣無(wú)縫,通過(guò)簡(jiǎn)單的拖拽即可完成界面元素的布局。仿Java而生,目的就是取代Java,然而其結(jié)果是顯而易見(jiàn)的,PC端程序開(kāi)發(fā)已經(jīng)落幕,在Web端,C#似乎跟Java不在一個(gè)重量級(jí)上。
考慮到微軟的技術(shù)更新?lián)Q代實(shí)在太快了,比如WinForm和WPF被全面移植到.NETCore。在這5G時(shí)代、人工智能、大數(shù)據(jù)各種浪潮的年代,實(shí)在沒(méi)有必要再去追逐微軟了。
JavaScript方向
考慮到題主的語(yǔ)言技術(shù)棧,主要偏向Web方向,開(kāi)發(fā)Windows軟件的話,隆重推薦下Electron??梢宰屇闶褂眉僇avaScript調(diào)用豐富的原生(操作系統(tǒng))APIs來(lái)創(chuàng)造桌面應(yīng)用,大名鼎鼎的VSCode、Atom就是使用該開(kāi)源庫(kù)來(lái)完成的。讓人們感覺(jué)JS真的有一統(tǒng)天下的趨勢(shì)(Web、移動(dòng)端、PC客戶端)。
至于Java、PyQt之流,這里就不再推薦了。畢竟Python的設(shè)計(jì)初衷就不是讓你來(lái)寫(xiě)Windows客戶端開(kāi)發(fā)的,而Java,重心也早已轉(zhuǎn)移到Web端和移動(dòng)端了,JavaSE開(kāi)發(fā)的客戶端程序已經(jīng)很少見(jiàn)了。
想開(kāi)發(fā)一款基于windows系統(tǒng)的桌面軟件,用什么語(yǔ)言?
想開(kāi)發(fā)一款基于windows系統(tǒng)的桌面軟件,用什么語(yǔ)言?其實(shí)大部分編程語(yǔ)言都行,不管是c++,還是c#,都支持桌面GUI開(kāi)發(fā),各種框架/庫(kù)層出不窮,當(dāng)然,還有一些比較經(jīng)典的開(kāi)發(fā)工具,delphi、powerbuilder等,下面我分別簡(jiǎn)單介紹一下:
c++GUI開(kāi)發(fā)
說(shuō)起c++做GUI開(kāi)發(fā),還是windows平臺(tái),許多朋友一定想到的是mfc,一個(gè)非常經(jīng)典的開(kāi)發(fā)框架,也是微軟早期一直推崇的,只需拖拽控件,編輯屬性,即可快速構(gòu)建一個(gè)桌面程序,省去了大量代碼編寫(xiě)和優(yōu)化,不過(guò)隨著時(shí)間的推移,mfc的缺點(diǎn)和弊病也逐漸暴露出來(lái),設(shè)計(jì)復(fù)雜、不夠靈活、不支持跨平臺(tái)等,只有一些老項(xiàng)目還在使用,更多的人開(kāi)始投向qt等新型開(kāi)發(fā)框架,易于學(xué)習(xí)、支持跨平臺(tái)、應(yīng)用廣泛,如果你本身熟悉c++的話,可以使用一下qt,整體效果非常不錯(cuò):
c#GUI開(kāi)發(fā)
這應(yīng)該是windows平臺(tái)下桌面開(kāi)發(fā)使用最多的編程語(yǔ)言了,平臺(tái)兼容性最好,也是微軟大力推廣的一種編程語(yǔ)言,不僅僅是桌面GUI開(kāi)發(fā),web開(kāi)發(fā)等也普遍應(yīng)用,入手容易,易于學(xué)習(xí),winform、wpf更是桌面開(kāi)發(fā)的神器,自帶GUI設(shè)計(jì)界面,組件容器眾多,屬性豐富,只需拖拽控件,編輯屬性,即可快速構(gòu)建一個(gè)桌面程序,如果你想快速迭代開(kāi)發(fā)一個(gè)大中型軟件,適用于windows平臺(tái),可以使用一下c#,效果非常不錯(cuò):
老牌工具delphi
除了c++、c#等編程語(yǔ)言,也不能忘了delphi這個(gè)老牌開(kāi)發(fā)工具,對(duì)于windows桌面開(kāi)發(fā)也是一把利器,如果你本身不熟悉編程語(yǔ)言,沒(méi)有任何經(jīng)驗(yàn)可言,可以使用一下delphi,專門為windows桌面開(kāi)發(fā)量身定做的一款開(kāi)發(fā)工具,自帶可視化設(shè)計(jì)界面,只需拖拽控件,編輯屬性,即可快速構(gòu)建一個(gè)GUI程序,所見(jiàn)即所得,支持各種主流數(shù)據(jù)庫(kù)開(kāi)發(fā),不管是運(yùn)行效率還是編譯效率都非常高,當(dāng)然,隨著c#等語(yǔ)言的興起,delphi的應(yīng)用范圍正在逐漸縮小,但對(duì)windows桌面開(kāi)發(fā)來(lái)說(shuō),效率還是非常高的:
其實(shí)除了以上語(yǔ)言和工具,還有許多其他語(yǔ)言也支持windows桌面開(kāi)發(fā),vb、python、java、易語(yǔ)言,還有比較流行的前端electron,根據(jù)自己實(shí)際情況,選擇適合自己的一款語(yǔ)言就行,網(wǎng)上也有相關(guān)教程和資料,介紹的非常詳細(xì),感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對(duì)你有所幫助吧。
開(kāi)發(fā)Windows平臺(tái)下的軟件用哪種編程語(yǔ)言比較主流比較好?
首先個(gè)人覺(jué)得不能說(shuō)哪種語(yǔ)言比較好比較流行,在一個(gè)平臺(tái)下開(kāi)發(fā)軟件,是根據(jù)軟件的要求來(lái)選擇具體的語(yǔ)言,當(dāng)然“懂技術(shù)”的甲方有時(shí)候也會(huì)“要求”你用哪種語(yǔ)言:)
Windows平臺(tái)下,具體說(shuō):
1、如果性能有限,穩(wěn)定性優(yōu)先(甲方也不差錢),那當(dāng)然最好就是用C/C++;當(dāng)然說(shuō)到這里又不免要爭(zhēng)論一番到底是用MFC還是QT。。嗯,要我這個(gè)骨灰級(jí)的來(lái)說(shuō)呢,,我的心中只有MFC。。:)
2、如果是考慮開(kāi)發(fā)效率和穩(wěn)定性,那么C#是最好選擇,,真是方便??!但悲劇的C#程序猿的工資,,,不說(shuō)了,說(shuō)多了都是淚:(
3、如果手下技術(shù)比較上不了臺(tái)階,那不妨搞搞Delphi,甚至VB,,不過(guò)這兩個(gè)現(xiàn)在號(hào)偏門。。
4、如果大量的復(fù)雜計(jì)算,還要畫(huà)圖,還要外部調(diào)用各種古怪的系統(tǒng),而且還不在乎跑的慢。。。那么,恭喜你,matlab,python是個(gè)好選擇。
5、哎,手下實(shí)在沒(méi)有合適的人,只有一堆做web的,能做C的也就我這幾個(gè)老東西,而且客戶也不那么在乎性能。。。那么,恭喜你,你有了低成本好選擇,你可以用electron這個(gè)神器,簡(jiǎn)單低成本漂亮!還可以用C來(lái)做混合編程搞定密集運(yùn)算部分!
其他諸如Java之類的你就看著用吧:)
如果開(kāi)發(fā)時(shí)間周期少,界面要求高,選c#或.net其它;
如果可以有較長(zhǎng)開(kāi)發(fā)周期,且對(duì)程序執(zhí)行效率要求高,圖形圖像處理復(fù)雜,選C++,(vs、QT、Clion、DevC++、Code::Blocks均可開(kāi)發(fā));
如果涉及算法較多,選Python;
如果要考慮今后需要跨多種平臺(tái)托展,選Java或Python。windows的C++程序如果要轉(zhuǎn)Linux,也可轉(zhuǎn),但若不是用QT等開(kāi)發(fā),會(huì)有一些改動(dòng),尤其如果是MFC框架開(kāi)發(fā)的程序轉(zhuǎn)Linux,改動(dòng)不小。
編寫(xiě)windows的窗口化程序就需要調(diào)用windows提供的API??梢酝ㄟ^(guò)大概3種辦法:
一是學(xué)習(xí)win32API就是windows為開(kāi)發(fā)者提供的接口,需用C++語(yǔ)言來(lái)調(diào)用。
二是學(xué)習(xí)MFC,MFC是微軟提供給開(kāi)發(fā)者的一個(gè)類庫(kù),以C++類的形式封裝了Windows的API,并且包含一個(gè)應(yīng)用程序框架,以減少應(yīng)用程序開(kāi)發(fā)人員的工作量。其中包含的類包含大量Windows句柄封裝類和很多Windows的內(nèi)建控件和組件的封裝類。三是你可以學(xué)習(xí)C#語(yǔ)言,C#語(yǔ)言生成面向.net的環(huán)境代碼,也是可以實(shí)現(xiàn)可視化窗口程序的。至于IOS這個(gè)你可以查看IOSAPI幫助文檔,里面會(huì)有一些例子。android開(kāi)發(fā)需要用androidSDK當(dāng)然android開(kāi)發(fā)需要用到JAVA語(yǔ)言所以還需安裝JAVASDK。編輯器可以用Eclipse。
目前,商業(yè)客戶端如果需要保密一般用C/C++。
以前還有VB、Delphi啥的,現(xiàn)在越來(lái)越少了。
.NET、Java之類容易被逆向。
我是從老VB6(非.net的)、Delphi開(kāi)始學(xué)起的,現(xiàn)在都已經(jīng)逐漸淘汰了,用的人也是越來(lái)越少了,我覺(jué)得主要看你開(kāi)發(fā)什么樣的軟件來(lái)選擇語(yǔ)言,我個(gè)人推薦C#或者C++。
C++一般用于開(kāi)發(fā)個(gè)人應(yīng)用,大多數(shù)的通用商業(yè)程序都是C++開(kāi)發(fā)的,比如迅雷影音。而C#更多用于企業(yè)應(yīng)用,更適合快速開(kāi)發(fā),調(diào)用API,COM組件,DLL都很方便,便于團(tuán)隊(duì)合作和使用第三方代碼。以前缺點(diǎn)是部署必須帶運(yùn)行庫(kù)或者用戶安轉(zhuǎn).net依賴,現(xiàn)在win7以上系統(tǒng)已經(jīng)自帶了,況且c#上手比較簡(jiǎn)單,學(xué)習(xí)難度小,跨平臺(tái)容易,首選c#。
其它還有像國(guó)產(chǎn)的e語(yǔ)言,中文編程概念方便的很多初學(xué)者學(xué)習(xí),編寫(xiě)一個(gè)進(jìn)銷存的簡(jiǎn)單軟件也可以。
建議用微軟的.NET比較好,其實(shí)有很多,開(kāi)發(fā)高性能的就用VC
計(jì)算機(jī)編程語(yǔ)言的編程軟件需要什么語(yǔ)言?
一 · 編程語(yǔ)言及其主要用途
常見(jiàn)的是 C Family (C系列語(yǔ)言),比如:C、Cpp(C++)、C Sharp(C#)、Java、Python、R、JavaScript、Objective-C、Swift、Go、Kotlin 等等。然后有很多腳本語(yǔ)言,Python 也在其內(nèi),比如:Ruby、Perl 等。
光說(shuō)名字意義不大,所以舉幾個(gè)例子。
C 常用于單片機(jī)開(kāi)發(fā)和一些接底層硬件的操作使用;
C++ 是 C 的超集,因?yàn)橹苯又С至嗣嫦驅(qū)ο笏愿嘤糜谟螒颉D像開(kāi)發(fā)方面;
C# 是微軟為了把 Java 人才引入 Windows 平臺(tái)設(shè)計(jì)的語(yǔ)言,和 Java 語(yǔ)法幾乎一致,目前多用于服務(wù)器后端開(kāi)發(fā)和 Unity 3D 的游戲開(kāi)發(fā),也有人會(huì)用這個(gè)做很多 windows 平臺(tái)下的軟件插件甚至常說(shuō)的軟件外掛(外掛其實(shí)嚴(yán)格說(shuō)就是插件,但大陸地區(qū)已經(jīng)有更深層的意義了,所以兩者并列舉例出來(lái));
Java 是目前最流行的服務(wù)器后端開(kāi)發(fā)語(yǔ)言和 Android 開(kāi)發(fā)語(yǔ)言,因?yàn)橛写罅靠蚣芎凸ぞ甙闹С郑琂ava 語(yǔ)言的運(yùn)行速度已經(jīng)不能阻擋 Java 成為服務(wù)器開(kāi)發(fā)的首選語(yǔ)言。至于是什么服務(wù)器后端開(kāi)發(fā),題主學(xué)了 JavaEE 自然便知,通俗舉例來(lái)說(shuō)可以 yy 一下:我寫(xiě)了這篇答案,答案存在哪里呢?肯定是在知乎那邊!至于怎么存、怎么取,都是后端開(kāi)發(fā)需要設(shè)計(jì)的問(wèn)題了。Java 也曾一度是 Android 的首選語(yǔ)言(雖然目前 Kotlin 的影響很多人轉(zhuǎn)戰(zhàn) Kotlin 去了),負(fù)責(zé) Android 頂層的 APP 層開(kāi)發(fā)。
Python 是目前機(jī)器學(xué)習(xí)最流行的語(yǔ)言,也可以做服務(wù)器開(kāi)發(fā),有堪比 Java Spring 框架的 Django 作為支持。更多的人會(huì)使用 Python 作為機(jī)器學(xué)習(xí)、深度學(xué)習(xí)的首選語(yǔ)言,因?yàn)?Python 語(yǔ)法的簡(jiǎn)潔和類似數(shù)學(xué)式表達(dá)的規(guī)范,當(dāng)然還是因?yàn)榘?,很多學(xué)者科學(xué)家都會(huì)使用 Python 做科學(xué)研究。
R 語(yǔ)言作用類似 Python,常用于工程方面。還有一門語(yǔ)言是 Matlab,其實(shí)稱之為語(yǔ)言是不恰當(dāng)?shù)模驗(yàn)檫@是一個(gè)軟件,脫離了軟件就無(wú)法生存,遠(yuǎn)不是編譯器那么簡(jiǎn)單的結(jié)構(gòu)了。MatLab 匯集了太多的工具,便于科學(xué)從業(yè)人員快速分析數(shù)據(jù),寫(xiě)出優(yōu)良的程序,這種程序語(yǔ)言通常也稱之為 Matlab;
JavaScript 是前端開(kāi)發(fā)首選語(yǔ)言,在使用 HTML + CSS 模式繪制出頁(yè)面圖像后,通常都會(huì)使用 JS (JavaScript)來(lái)寫(xiě)交互、動(dòng)畫(huà)、請(qǐng)求、視圖內(nèi)容更新這些操作,這門語(yǔ)言是函數(shù)式也是面向?qū)ο蟮恼Z(yǔ)言,靈活度極高,但有了 C Family 任何一門語(yǔ)言的基礎(chǔ)就很容易學(xué);
Objective-C 是蘋果(Apple.Inc)開(kāi)發(fā)的一門為 mac 和 iPhone 設(shè)備開(kāi)發(fā)程序的語(yǔ)言,和 C++ 類似,也是 C 的超集,也是面向?qū)ο?。但由于其太過(guò)于面向?qū)ο罅耍ɑ谙⒌膫鬟f數(shù)據(jù)機(jī)制)導(dǎo)致很不 C Family,所以對(duì) C 系列人員上手難度偏大,比較冷門。但后來(lái) iPhone 的崛起,導(dǎo)致該語(yǔ)言又一度熱議起來(lái);
Swift 是蘋果最新發(fā)明的一門函數(shù)式編程語(yǔ)言,和 OC(Objective-C)的目的一樣,為蘋果設(shè)備而生,但蘋果也提倡用該語(yǔ)言做工程方面的擴(kuò)展,比如蘋果會(huì)在宣傳的時(shí)候拿它和 Python 對(duì)比。為了兼容 OC 的所有工具包,避免該語(yǔ)言的冷門,創(chuàng)造了 bridge 作為兩個(gè)語(yǔ)言直接的橋梁,解決了語(yǔ)言兼容問(wèn)題;
Go 語(yǔ)言是 Google 開(kāi)發(fā)的一門函數(shù)式語(yǔ)言,特點(diǎn)是能解決大規(guī)模的高并發(fā)問(wèn)題,天然支持多線程使得該語(yǔ)言一出來(lái)就廣受關(guān)注。目前多用于機(jī)器學(xué)習(xí)和一些 Google 自己產(chǎn)品的開(kāi)發(fā)以及后端服務(wù)器開(kāi)發(fā);
Kotlin 是大家常用的 IDEA 開(kāi)發(fā)工具的開(kāi)發(fā)商 Jetbrains 發(fā)明的函數(shù)式語(yǔ)言,這門語(yǔ)言是基于 JVM 進(jìn)行設(shè)計(jì)的,比較完美地兼容了 Java 語(yǔ)言,所以前后端開(kāi)發(fā)都可以使用該語(yǔ)言替代 Java,不確切統(tǒng)計(jì)是可以用比 Java 少一半的代碼量完成同樣的功能并擁有同樣的運(yùn)行效率。類似的 JVM 語(yǔ)言也有 Scale,但比較元老了,兼容力度不大所以也開(kāi)始廣受詬??;
Ruby 和 Perl 這些是典型的腳本語(yǔ)言,Ruby 多用于各個(gè)語(yǔ)言的粘合劑,Perl 是 Linux 下最常用的腳本語(yǔ)言,文本處理能力極強(qiáng)。
windows軟件開(kāi)發(fā)用什么編程語(yǔ)言的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于windows是用什么語(yǔ)言、windows軟件開(kāi)發(fā)用什么編程語(yǔ)言的信息別忘了在本站進(jìn)行查找喔。