windows軟件開(kāi)發(fā)用什么語(yǔ)言(windows應(yīng)用用什么語(yǔ)言開(kāi)發(fā))
本篇文章給大家談?wù)剋indows軟件開(kāi)發(fā)用什么語(yǔ)言,以及windows應(yīng)用用什么語(yǔ)言開(kāi)發(fā)對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
Windows開(kāi)發(fā)軟件,用什么軟件開(kāi)發(fā),用什么語(yǔ)言開(kāi)發(fā)?
零基礎(chǔ)學(xué)習(xí)java可按照這份大綱來(lái)進(jìn)行學(xué)習(xí)
第一階段:Java專(zhuān)業(yè)基礎(chǔ)課程
階段目標(biāo):
1. 熟練掌握J(rèn)ava的開(kāi)發(fā)環(huán)境與編程核心知識(shí)
2. 熟練運(yùn)用Java面向?qū)ο笾R(shí)進(jìn)行程序開(kāi)發(fā)
3. 對(duì)Java的核心對(duì)象和組件有深入理解
4. 熟練應(yīng)用JavaAPI相關(guān)知識(shí)
5. 熟練應(yīng)用JAVA多線(xiàn)程技術(shù)
6. 能綜合運(yùn)用所學(xué)知識(shí)完成一個(gè)項(xiàng)目
知識(shí)點(diǎn):
1、基本數(shù)據(jù)類(lèi)型,運(yùn)算符,數(shù)組,掌握基本數(shù)據(jù)類(lèi)型轉(zhuǎn)換,運(yùn)算符,流程控制。
2、數(shù)組,排序算法,Java常用API,類(lèi)和對(duì)象,了解類(lèi)與對(duì)象,熟悉常用API。
3、面向?qū)ο筇匦裕峡蚣埽煜っ嫦驅(qū)ο笕筇匦?,熟練使用集合框架?/p>
4、IO流,多線(xiàn)程。
5、網(wǎng)絡(luò)協(xié)議,線(xiàn)程運(yùn)用。
第二階段:JavaWEB核心課程
階段目標(biāo):
1. 熟練掌握數(shù)據(jù)庫(kù)和MySQL核心技術(shù)
2. 深入理解JDBC與DAO數(shù)據(jù)庫(kù)操作
3. 熟練運(yùn)用JSP及Servlet技術(shù)完成網(wǎng)站后臺(tái)開(kāi)發(fā)
4. 深入理解緩存,連接池,注解,反射,泛型等知識(shí)
5. 能夠運(yùn)用所學(xué)知識(shí)完成自定義框架
知識(shí)點(diǎn):
1、數(shù)據(jù)庫(kù)知識(shí),范式,MySQL配置,命令,建庫(kù)建表,數(shù)據(jù)的增刪改查,約束,視圖,存儲(chǔ)過(guò)程,函數(shù),觸發(fā)器,事務(wù),游標(biāo),建模工具。
2、深入理解數(shù)據(jù)庫(kù)管理系統(tǒng)通用知識(shí)及MySQL數(shù)據(jù)庫(kù)的使用與管理。為Java后臺(tái)開(kāi)發(fā)打下堅(jiān)實(shí)基礎(chǔ)。Web頁(yè)面元素,布局,CSS樣式,盒模型,JavaScript,jQuery。
3、掌握前端開(kāi)發(fā)技術(shù),掌握jQuery。
4、Servlet,EL表達(dá)式,會(huì)話(huà)跟蹤技術(shù),過(guò)濾器,F(xiàn)reeMarker。
5、掌握Servlet相關(guān)技術(shù),利用Servlet,JSP相關(guān)應(yīng)用技術(shù)和DAO完成B/S架構(gòu)下的應(yīng)用開(kāi)發(fā)。
6、泛型,反射,注解。
7、掌握J(rèn)AVA高級(jí)應(yīng)用,利用泛型,注解,枚舉完成自己的CRUD框架開(kāi)發(fā)為后續(xù)框架學(xué)習(xí)做鋪墊。
8、單點(diǎn)登錄,支付功能,項(xiàng)目整合,分頁(yè)封裝熟練運(yùn)用JSP及Servlet核心知識(shí)完成項(xiàng)目實(shí)戰(zhàn)。
第三階段:JavaEE框架課程
階段目標(biāo):
1. 熟練運(yùn)用Linux操作系統(tǒng)常見(jiàn)命令及完成環(huán)境部署和Nginx服務(wù)器的配置
2. 熟練運(yùn)用JavaEE三大核心框架:Spring,SpringMVC,MyBatis
3. 熟練運(yùn)用Maven,并使用SpringBoot進(jìn)行快速框架搭建
4. 深入理解框架的實(shí)現(xiàn)原理,Java底層技術(shù),企業(yè)級(jí)應(yīng)用等
5. 使用Shiro,Ztree和Spring,SpringMVC,Mybaits完成企業(yè)項(xiàng)目
知識(shí)點(diǎn):
1、Linux安裝配置,文件目錄操作,VI命令,管理,用戶(hù)與權(quán)限,環(huán)境部署,Struts2概述,hiberante概述。
2、Linux作為一個(gè)主流的服務(wù)器操作系統(tǒng),是每一個(gè)開(kāi)發(fā)工程師必須掌握的重點(diǎn)技術(shù),并且能夠熟練運(yùn)用。
3、SSH的整合,MyBatis,SpringMVC,Maven的使用。
4、了解AOP原理,了解中央控制器原理,掌握MyBatis框架,掌握SSM框架的整合。
5、Shiro,Ztree,項(xiàng)目文檔,項(xiàng)目規(guī)范,需求分析,原型圖設(shè)計(jì),數(shù)據(jù)庫(kù)設(shè)計(jì),工程構(gòu)建,需求評(píng)審,配置管理,BUG修復(fù),項(xiàng)目管理等。
6、獨(dú)立自主完成一個(gè)中小型的企業(yè)級(jí)綜合項(xiàng)目的設(shè)計(jì)和整體架構(gòu)的原型和建模。獨(dú)立自主完成一個(gè)大型的企業(yè)級(jí)綜合項(xiàng)目,并具備商業(yè)價(jià)值
桌面端開(kāi)發(fā)都用什么語(yǔ)言,簡(jiǎn)單分析下這些語(yǔ)言的優(yōu)劣勢(shì)對(duì)比?
目前,最優(yōu)的選擇有四個(gè):
1.如果只在win下使用,.net form是不二選擇,可謂是又快又好,企業(yè)應(yīng)用或定制開(kāi)發(fā)都是相當(dāng)好的,初學(xué)者也可以入手。
2.electron,跨平臺(tái)。需要會(huì)前端,必須熟悉js、css和html。屬于前端人員大殺器,如果是初學(xué)者,需要一下子學(xué)三樣?xùn)|西,再加上electron的進(jìn)程間通信,可能會(huì)被搞懵。
3. qt5,可以使用qml(js語(yǔ)法)進(jìn)行UI編程,但是需要懂c艸,但是寫(xiě)軟件相當(dāng)快,還可以寫(xiě)安卓、ios、Linux、嵌入式中的應(yīng)用。
4.flutter,剛剛正式支持win平臺(tái)的軟件開(kāi)發(fā)。谷歌出的這個(gè)東西,適合沒(méi)有基礎(chǔ)的初學(xué)者,因?yàn)槭且粋€(gè)全新的體系,全新的語(yǔ)言,寫(xiě)ios、安卓非常高效,之后還會(huì)兼容h5。如果是初學(xué)者可以跟著走,值得嘗試。但是新東西總有一些坑。
正式項(xiàng)目跨平臺(tái)建議electron或qt,只用win平臺(tái)強(qiáng)烈建議微軟自己的net。個(gè)人技術(shù)嘗試建議flutter。
桌面端開(kāi)發(fā)跨平臺(tái)的,如果你是輕量級(jí)的項(xiàng)目,那么我推薦你用electron, 目前使用Electron來(lái)開(kāi)發(fā)的桌面應(yīng)用非常多,我們最熟悉的比如Atom,VScode等等。
而且在github上也能找到許多應(yīng)用使用了electron。
electron是Node,Chromium,html,css,js的結(jié)合框架,這就需要你有一定的前端基礎(chǔ)。其實(shí)只需要了解一下electron的API就行了,其他的就像你在做web是一樣的。
這種方式最大的缺點(diǎn)就是性能,還有透明窗口也有問(wèn)題。所以在做需要性能方面占有很大成分的項(xiàng)目時(shí),并不推薦使用這個(gè)方式。
那么其他的,就是最近幾年使用比較多的windows directui框架,但它不是跨平臺(tái)的。
那么就引出了qt,作為c++跨平臺(tái)的界面框架,這個(gè)上手的話(huà),我覺(jué)得對(duì)一般人是有難度的,因?yàn)槭紫刃枰鷮?shí)的c++功底,其次你要熟悉控件的制作原理,因?yàn)橛袝r(shí)候你需要定制自己的UI控件。它現(xiàn)在在嵌入式,軍工領(lǐng)域非常受歡迎。但是整個(gè)庫(kù)非常臃腫龐大,而且開(kāi)發(fā)界面的效率也非常低。如果來(lái)做互聯(lián)網(wǎng)項(xiàng)目,迭代更新的速度根本就跟不上。
目前都只有大公司會(huì)采用,像maya這種生產(chǎn)力型的應(yīng)用很多是qt做的。
還有一種是直接使用Cef加js,比如網(wǎng)易云音樂(lè),就是這么搞的,但是很多和系統(tǒng)平臺(tái)的交互接口你需要重寫(xiě),等于是需要自己造輪子。工作量大,目前沒(méi)有適合的框架給你套用,也需要扎實(shí)的c++功底。
其實(shí)pc端的應(yīng)用基本也就windows會(huì)火一些,再加一個(gè)macos,那么選擇qt應(yīng)該會(huì)很好一點(diǎn),畢竟你自己造一個(gè)跨平臺(tái)的框架,太費(fèi)時(shí)。總之,做跨平臺(tái)就意味著,不可能做到既有效率又完美的實(shí)現(xiàn)各種功能,許多都要自己摸索。
win桌面端直接上visual studio??!然后你熟悉什么語(yǔ)言?vb.net,c#,c++都有相應(yīng)的win桌面工具。直接用就好了,非常好用
編程語(yǔ)言這種東西無(wú)所謂,只要能用啥都可以。 主要看你老板需要和你會(huì)用什么語(yǔ)言。
比如 我用AS編安卓程序,當(dāng)然用JAVA。不過(guò)我后臺(tái)最開(kāi)始用ASP和ASP.NET來(lái)做,現(xiàn)在換PHP了。桌面端用QT或者VB做。 涉及單片機(jī)部分控制也用C。
現(xiàn)在做跨平臺(tái)的了 開(kāi)始以QT為主了。
只要能達(dá)到目的啥都可以。
學(xué)會(huì)1-2種 換其他的也不是很難。
對(duì)初學(xué)者來(lái)建議學(xué)C起步吧。
精通一門(mén),重新學(xué)個(gè)語(yǔ)言入門(mén)也就1個(gè)月的事。
PC桌面程序,如果簡(jiǎn)單一點(diǎn)的,用pyqt5+python的開(kāi)發(fā)難度和周期都比較現(xiàn)實(shí)一點(diǎn)
會(huì)C++ 用Qt5 非常不錯(cuò) 寫(xiě)代碼效率很高
會(huì)js 用atom使用的那個(gè)框架
會(huì)Python用PyQt 寫(xiě)代碼很快
會(huì)java用JavaFX
看語(yǔ)言咯
還可以用delphi,其firemonkey框架發(fā)布8年時(shí)間,支持跨平臺(tái):win,安卓,ios,macos,linux,后續(xù)支持webassembly,界面是控件拖拽布局所見(jiàn)即所得,開(kāi)發(fā)效率較高。編譯生成的是機(jī)器碼,編譯速度快,調(diào)試方便,其生成機(jī)器碼運(yùn)行效率較高,支持x86,arm的32位64位處理器。支持跨平臺(tái)3D界面,藍(lán)牙通訊,定位,重力,攝像等,支持多種SQL,NoSQL數(shù)據(jù)庫(kù)。單個(gè)開(kāi)發(fā)工具實(shí)現(xiàn)前后端開(kāi)發(fā),跨平臺(tái)開(kāi)發(fā)。適合個(gè)人和小公司用一套工具實(shí)現(xiàn)大部分開(kāi)發(fā)需求。
主要有以下幾種技術(shù)
### Duilib
#### 簡(jiǎn)述
Duilib是在Windows平臺(tái)上使用最廣泛的類(lèi)庫(kù),使用C++和XML混合編程,國(guó)內(nèi)很多計(jì)算機(jī)企業(yè)都喜歡使用這個(gè)類(lèi)庫(kù),可能是由于他的技術(shù)許可比較寬泛的原因。
適合于界面比較簡(jiǎn)單的軟件,視覺(jué)特效豐富,局限于Windows的平臺(tái)。例子:360電腦管家。
#### 優(yōu)勢(shì)
#### 劣勢(shì)
### Gtk、Qt或WxWidget:
#### 簡(jiǎn)述
三種基本可以做到跨平臺(tái)的技術(shù),使用C/C++開(kāi)發(fā),使用者廣泛。其中WxWidget使用了API嫁接方式,Qt和Gtk(包括各種綁定技術(shù))使用自繪技術(shù)。
結(jié)構(gòu)嚴(yán)謹(jǐn),軟件可以做的很大很復(fù)雜。例子:WPS和Maya。
#### 優(yōu)勢(shì)
#### 劣勢(shì)
### Electron:
#### 簡(jiǎn)介
使用Web技術(shù)開(kāi)發(fā)桌面軟件,基于Chromium(Chrome)引擎,使用JS編程語(yǔ)言,絕大多數(shù)使用者都是原來(lái)的網(wǎng)頁(yè)開(kāi)發(fā)者。
絕大多數(shù)都是愛(ài)好者使用,處于“勉強(qiáng)可用”的地步。
適合大面積靜態(tài)展示型軟件使用。例子:網(wǎng)易云音樂(lè)。
#### 優(yōu)勢(shì)
#### 劣勢(shì)
### QtQuick(QML)
#### 簡(jiǎn)述
Qt公司開(kāi)發(fā)的一款基于OpenGL的圖形類(lèi)庫(kù),有顯卡加速,類(lèi)似于Duilib。采用了C++與QML混合編程。QML類(lèi)似于JavaScript語(yǔ)言。
QtQuick下一個(gè)版本在Qt 6上更加強(qiáng)大,業(yè)界期待已久。
#### 優(yōu)勢(shì)
#### 劣勢(shì)
### Atk、Swing或JavaFX
使用Java語(yǔ)言開(kāi)發(fā)軟件,有JDK加持業(yè)界積累的眾多Java類(lèi)庫(kù)支持。有不輸于VS的IDEA加持,本應(yīng)該更棒,只是現(xiàn)在已經(jīng)式微了。
絕大多數(shù)使用者都是企業(yè)開(kāi)發(fā)(不追求界面美觀(guān))、愛(ài)好者(開(kāi)發(fā)順手)。
### WinForm、WPF或Xamarin:
使用C#開(kāi)發(fā),WinForm和WPF局限于Windows平臺(tái)。有VisualStudio加持使用很爽。
### Flutter:
使用Dart語(yǔ)言,新類(lèi)庫(kù),bug可能會(huì)很多。
### SwiftUI或Cocoa:
蘋(píng)果平臺(tái)原生界面技術(shù),macOS平臺(tái)內(nèi)建支持,不是macOS專(zhuān)用軟件不推薦。
### Win32:
經(jīng)典Windows 平臺(tái)API,絕大多數(shù)只有一些老軟件還在使用,不是維護(hù)老軟件不推薦。
winform,不二選擇
webview2,作為一個(gè)瀏覽器控件嵌入在桌面應(yīng)用中,支持.net core和.net framework
軟件開(kāi)發(fā)主要用什么編程語(yǔ)言?
1、Java語(yǔ)言
作為跨平臺(tái)的語(yǔ)言,可以運(yùn)行在Windows和Unix/Linux下面,長(zhǎng)期成為用戶(hù)的首選。自JDK6.0以來(lái),整體性能得到了極大的提高,市場(chǎng)使用率超過(guò)20%??赡芤呀?jīng)達(dá)到了其鼎盛時(shí)期了,不知道后面能維持多長(zhǎng)時(shí)間。(推薦閱讀:Java 程序員必須掌握的 Linux 命令)
2、C/C++語(yǔ)言
以上2個(gè)作為傳統(tǒng)的語(yǔ)言,一直在效率第一的領(lǐng)域發(fā)揮著極大的影響力。像Java這類(lèi)的語(yǔ)言,其核心都是用C/C++寫(xiě)的。在高并發(fā)和實(shí)時(shí)處理,工控等領(lǐng)域更是首選。
3、PHP
同樣是跨平臺(tái)的腳本語(yǔ)言,在網(wǎng)站編程上成為了大家的首選,支持PHP的主機(jī)非常便宜,PHP+Linux+MySQL+Apache的組合簡(jiǎn)單有效。
4、JavaScript
JavaScript是一種由Netscape的LiveScript發(fā)展而來(lái)的腳本語(yǔ)言,主要目的是為了解決服務(wù)器終端語(yǔ)言,比如Perl,遺留的速度問(wèn)題。當(dāng)時(shí)服務(wù)端需要對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證,由于網(wǎng)絡(luò)速度相當(dāng)緩慢,只有28.8kbps,驗(yàn)證步驟浪費(fèi)的時(shí)間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數(shù)據(jù)驗(yàn)證的基本功能。
一些著名的軟件都用什么語(yǔ)言編寫(xiě)?
一、操作系統(tǒng):
Microsoft Windows : 匯編 - C - C++
備注:曾經(jīng)在智能手機(jī)的操作系統(tǒng)(Windows Mobile)考慮摻點(diǎn)C#寫(xiě)的程序,比如軟鍵盤(pán),結(jié)果因?yàn)閷?xiě)出來(lái)的程序太慢,實(shí)在無(wú)法和別的模塊合并,最終又回到C++重寫(xiě)。
相信很多朋友都知道Windows Vista,這個(gè)系統(tǒng)開(kāi)發(fā)早期比爾蓋茨想全部用C#寫(xiě),但是最終因?yàn)閳?zhí)行慢而放棄,結(jié)果之前無(wú)數(shù)軟件工程師日夜勞作成果一夜之間被宣告作廢。
Linux :C
Apple MacOS : 主要為C,部分為C++。 備注: 之前用的語(yǔ)言比較雜,最早是匯編和Pascal。
Sun Solaris : C
HP-UX : C
Symbian OS : 匯編,主要為C++。 (諾基亞手機(jī))
Google Android :2008 年推出: C語(yǔ)言(有傳言說(shuō)是用Java開(kāi)發(fā)的操作系統(tǒng),但最近剛推出原生的C語(yǔ)言SDK)
RIM BlackBerry OS 4.x : 黑莓 C++
二、圖形界面層
Microsoft Windows UI : C++
Apple MacOS UI (Aqua) : C++
Gnome (Linux圖形界面之一,大腳): C和C++, 主要是C。
KDE (Linux圖形界面) ,C++。
三、桌面搜索工具
Google Desktop Search : C++
Microsoft Windows Desktop Search : C++
Beagle (Linux/Windows/UNIX 下): C# (基于開(kāi)源的 .net : Mono)
四、辦公軟件
Microsoft Office : 在 匯編 - C - 穩(wěn)定在C++
Sun Open Office : 部分JAVA(對(duì)外接口),主要為C++ (開(kāi)源,可下載其源代碼)
Corel Office/WordPerfect Office : 1996年嘗試過(guò)Java,次年被拋棄,重新回到C/C++
Adobe Systems Acrobat Reader/Distiller : C++
五、關(guān)系型數(shù)據(jù)庫(kù)
Oracle : 匯編、C、C++、Java。主要為C++。
MySQL : C++
IBM DB2 : 匯編、C、C++,主要為C。
Microsoft SQL Server : 匯編 - C-C++
IBM Informix : 匯編、C、C++,主要為C。
SAP DB/MaxDB : C++
六、Web Browsers/瀏覽器
Microsoft Internet Explorer : C++
Mozilla Firefox : C++
Netscape Navigator : The code of Netscape browser was written in C, and Netscape engineers, all bought to Java (see M. Cusumano book and article) redeveloped the browser using Java. It was too slow and abandoned. Mozilla, the next version, was later developed using C++.
Safari : (2003年1月發(fā)布)C++
Google Chrome : (2008的發(fā)布)C++
Sun HotJava : Java (死于1999年)
Opera : C++ (手機(jī)上占用率比較大)
Opera Mini : Opera Mini (2007) has a very funny architecture, and is indeed using both C++ and Java. The browser is split in two parts, an ultra thin (less than 100Kb) "viewer" client part and a server side responsible of rendering. The first uses Java and receives the page under the OBML format, the latter reuses classical Opera (C++) rendering engine plus Opera's Small Screen Rendering, on the server. This allows Opera to penetrate various J2ME-enabled portable devices, such as phones, while preserving excellent response time. This comes obviously with a few sacrifices, for instance on JavaScript execution.
Mosaic : 鼻祖(已死) C 語(yǔ)言
七、郵件客戶(hù)端
Microsoft Outlook : C++
IBM Lotus Notes : Java
Foxmail : Delphi
八、軟件開(kāi)發(fā)集成環(huán)境/IDE:
Microsoft Visual Studio : C++
Eclipse : Java (其圖形界面SWT基于C/C++)
Code::Blocks : C++
易語(yǔ)言: C++
火山中文: C++
火山移動(dòng): C++
九、虛擬機(jī)
Microsoft .Net CLR (.NET的虛擬機(jī)): C++
Java Virtual Machine (JVM) : Java 虛擬機(jī):C++
十、ERP軟件 (企業(yè)應(yīng)用)
SAP mySAP ERP : C,后主要為“ABAP/4”語(yǔ)言
Oracle Peoplesoft : C++ - Java
Oracle E-Business Suite : Java
十一、商業(yè)智能(Business Intelligence )
Business Objects : C++
十二、圖形處理
Adobe Photoshop : C++
The GIMP : C
十三、搜索引擎
Google : 匯編 與 C++,主要為C++
十四、著名網(wǎng)站
eBay : 2002年為C++,后主要遷至Java
facebook : C++ 和 PHP
This line is only about facebook, not its plugins. Plugins can be developed in many different technologies, thanks to facebook's ORB/application server, Thrift. Thrift contains a compiler coded in C++. facebook people write about Thrift: "The multi-language code generation is well suited for search because it allows for application development in an efficient server side language (C++) and allows the Facebook PHP-based web application to make calls to the search service using Thrift PHP libraries." Aside the use of C++, facebook has adopted a LAMP architecture.
阿里巴巴和淘寶: php-C++/Java(主要用)
十五、 游戲 :
匯編、C、C++
星際爭(zhēng)霸、魔獸爭(zhēng)霸、CS、帝國(guó)時(shí)代、跑跑卡丁車(chē)、傳奇、魔獸世界.... 數(shù)不勝數(shù)了,自己數(shù)吧
都是用C++開(kāi)發(fā)的,C++語(yǔ)言靠近系統(tǒng)地稱(chēng),執(zhí)行速度最快。比如你的兩個(gè)朋友與你分別玩用VB、Java、與C++編寫(xiě)的“跑跑卡丁車(chē)”,你玩C++編寫(xiě)的 游戲 已經(jīng)跑玩結(jié)束了,發(fā)現(xiàn)你的兩個(gè)朋友還沒(méi)開(kāi)始跑呢,那是相當(dāng)?shù)目ò。?/p>
十六、編譯器
Microsoft Visual C++ 編譯器: C++
Microsoft Visual Basic 解釋、編譯器: C++
Microsoft Visual C# : 編譯器: C++
gcc (GNU C compiler) : C
javac (Sun Java compiler) : Java
Perl : C++
PHP : C
十七、3D 引擎
Microsoft DirectX : C++
OpenGL : C
OGRE 3D : C++
十八、Web Servers (網(wǎng)頁(yè)服務(wù))
Apache : C和C++,主要為C
Microsoft IIS : C++
Tomcat: Java
Jboss: Java
十九:郵件服務(wù)
Microsoft Exchange Server : C-C++
Postfix : C
hMailServer : C++
Apache James : Java
二十:CD/DVD 刻錄
Nero Burning ROM : C++
K3B : C++
二十一:媒體播放器
Nullsoft Winamp : C++
Microsoft Windows Media Player : C++
Microsoft Windows Media Player : C++
二十二:Peer to Peer (P2P軟件)
eMule : C++
μtorrent : C++
Azureus : Java (圖形界面使用基于C/C++的SWT,類(lèi)Eclipse)
二十三:全球定位系統(tǒng)(GPS)
TomTom : C++
Hertz NeverLost : C++
Garmin : C++
Motorola VIAMOTO : 2007年6月,停止服務(wù)。 Java。
二十四:3D 引擎
Microsoft DirectX : C++(相信玩 游戲 的同學(xué)都知道這個(gè),現(xiàn)在最高版本是DX11)
OpenGL : C
OGRE 3D : C++
二十五:服務(wù)器軟件
Apache: C
Nginx: C
IIS: C
二十六:其他相關(guān)
OpenStack: Python
綜述
著名的軟件一般是系統(tǒng)軟件,軟件一般都分為系統(tǒng)軟件和應(yīng)用軟件。開(kāi)發(fā)軟件分為一次開(kāi)發(fā)和二次開(kāi)發(fā),比如開(kāi)發(fā)操作系統(tǒng)(系統(tǒng)軟件),就是一次開(kāi)發(fā);在操作基礎(chǔ)上進(jìn)行應(yīng)用軟件的開(kāi)發(fā),比如開(kāi)發(fā) 游戲 ,就是二次開(kāi)發(fā)。
一次開(kāi)發(fā)的系統(tǒng)軟件,要直接調(diào)用硬件資源,必須使用簡(jiǎn)單、直接的底層語(yǔ)言和中層語(yǔ)言,比如匯編和C語(yǔ)言;二次開(kāi)發(fā)應(yīng)用軟件等,因?yàn)閼?yīng)用軟件的類(lèi)別比較多的,針對(duì)的情況比較復(fù)雜和具體,因此可以選擇的語(yǔ)言很多,比如,大數(shù)據(jù)人工智能方面的有Python;安卓手機(jī)APP就是Java等等。
這里還有一個(gè)誤區(qū),其實(shí)語(yǔ)言不重要,每種語(yǔ)言都差不多,重要的是開(kāi)發(fā)環(huán)境和編程思想。要學(xué)習(xí)編程開(kāi)發(fā),學(xué)的不是語(yǔ)言,而是對(duì)于開(kāi)發(fā)環(huán)境工具的使用和編程思維的錘煉。很多著名的軟件都是用C等底層語(yǔ)言編寫(xiě)的,但是也可以用其他語(yǔ)言編寫(xiě),不過(guò)很少學(xué)C了,其中有商業(yè)的原因。(后面會(huì)解釋?zhuān)?/p>
集成開(kāi)發(fā)環(huán)境軟件
計(jì)算機(jī)語(yǔ)言是不可以單獨(dú)拿出來(lái)說(shuō)的,比如我們說(shuō)C語(yǔ)言,指的是C語(yǔ)言編譯器,而Python語(yǔ)言,指的是Python解釋器。而編譯器和解釋器卻都是用C語(yǔ)言編寫(xiě),是不是很意外,所以著名的軟件一般都是系統(tǒng)軟件,使用的是C語(yǔ)言,一個(gè)語(yǔ)言就要初中水平就可以學(xué)會(huì)了,但必須了解IDE開(kāi)發(fā)環(huán)境。
要使用計(jì)算機(jī)語(yǔ)言,就必須安裝編譯器,或者是解釋器,程序員是在TXT文本上編寫(xiě)語(yǔ)言的,用編譯器可以一次性編譯為可執(zhí)行文件exe,用解釋器則可以逐條翻譯成機(jī)器語(yǔ)言并逐條執(zhí)行。編譯器速度快,解釋器可以跨系統(tǒng),到了別的系統(tǒng),不需要程序員改寫(xiě)程序,換一個(gè)解釋器就行了。
IDE集成開(kāi)發(fā)環(huán)境具備圖形操作界面、編譯器、調(diào)制器、控制臺(tái),是非常重要的開(kāi)發(fā)工具的,只會(huì)一個(gè)計(jì)算機(jī)的語(yǔ)言語(yǔ)法,卻不會(huì)使用IDE,基本上是沒(méi)用的!
編程思想
很多著名的軟件都是使用C等底層語(yǔ)言編寫(xiě)的,而且所用的都是編譯器。當(dāng)然還有另外一個(gè)原因,就是編程思想,C語(yǔ)言是面向過(guò)程,Python是面向?qū)ο?。很明顯,一次開(kāi)發(fā)的系統(tǒng)軟件肯定是面向過(guò)程的,而面向具體使用場(chǎng)景的應(yīng)用軟件肯定是面向?qū)ο蟮摹?/p>
高手可以自由使用編程思想、程序編寫(xiě)時(shí),交替使用各種語(yǔ)言、切換解釋器或者編譯器,達(dá)到隱藏核心代碼目的;又或者軟件的核心模塊采用C等底層代碼,保證軟件的運(yùn)行速度。畢竟開(kāi)發(fā)時(shí)都是模塊化的,不同模塊使用不同的方法都是可以的!
所以很多著名的軟件,往往是混合著各種語(yǔ)言,核心部分是C,其他部分則根據(jù)不同的情況選用不同語(yǔ)言,之所以會(huì)這樣做,是因?yàn)槭褂肅開(kāi)發(fā)軟件要耗費(fèi)大量的時(shí)間太。摩爾定律推動(dòng)硬件發(fā)展,軟件開(kāi)發(fā)也受到影響,一個(gè)軟件晚幾天推出市場(chǎng),效果完全不同,所以程序員經(jīng)常加班趕工,速度才是最重要的。
總結(jié)
如上所述,著名的軟件是使用C等底層語(yǔ)言、編譯器語(yǔ)言、面向過(guò)程的語(yǔ)言編寫(xiě)的,更多的是在一個(gè)軟件的核心部分使用C等底層語(yǔ)言、編譯器語(yǔ)言、面向過(guò)程的語(yǔ)言,其他則見(jiàn)機(jī)行事。
現(xiàn)在主流的語(yǔ)言是java、python和go
windows程序用什么軟件編寫(xiě)的語(yǔ)言
C/C++,C#,VB.NET,Java等都可以。C/C++ 可以開(kāi)發(fā)原生的 Windows 程序,對(duì)硬件和系統(tǒng)底層支持良好。它是最常用的開(kāi)發(fā)語(yǔ)言之一。開(kāi)發(fā)環(huán)境主要有微軟C++編譯器,Intel C/C++ 編譯器和 GCC 。在 Windows 下的編程軟件(IDE)主要是 Visual Studio 或 Visual C++ Express(都默認(rèn)使用微軟C++編譯器)。
C# 和 VB.NET 多用于微軟 .NET 平臺(tái)的開(kāi)發(fā),可以在 .NET 平臺(tái)之上編寫(xiě) Windows 程序,開(kāi)發(fā)起來(lái)比較簡(jiǎn)單,而且軟件界面很美觀(guān)。編程軟件(IDE)是 Visual Studio。
Java 可用于 JavaSE 平臺(tái)下的開(kāi)發(fā),可以在 JavaSE 平臺(tái)之上編寫(xiě) Windows 程序,同時(shí) Java 程序可以在不同的操作系統(tǒng)下運(yùn)行。開(kāi)發(fā)環(huán)境主要有 Oracle JDK,編程軟件(IDE)可以選 Eclipse,MyEclipse 和 NetBeans。
Windows是用哪種編程語(yǔ)言開(kāi)發(fā)的?
windows大部分是用c語(yǔ)言編寫(xiě)的,只有少數(shù)不得不用匯編的地方用的是匯編。
windows軟件開(kāi)發(fā)用什么語(yǔ)言的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于windows應(yīng)用用什么語(yǔ)言開(kāi)發(fā)、windows軟件開(kāi)發(fā)用什么語(yǔ)言的信息別忘了在本站進(jìn)行查找喔。