主流軟件開發(fā)語言(主流軟件開發(fā)語言是什么)
今天給各位分享主流軟件開發(fā)語言的知識,其中也會對主流軟件開發(fā)語言是什么進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!
本文目錄一覽:
一些著名的軟件都用什么語言編寫?
一、操作系統(tǒng):
Microsoft Windows : 匯編 - C - C++
備注:曾經(jīng)在智能手機的操作系統(tǒng)(Windows Mobile)考慮摻點C#寫的程序,比如軟鍵盤,結(jié)果因為寫出來的程序太慢,實在無法和別的模塊合并,最終又回到C++重寫。
相信很多朋友都知道Windows Vista,這個系統(tǒng)開發(fā)早期比爾蓋茨想全部用C#寫,但是最終因為執(zhí)行慢而放棄,結(jié)果之前無數(shù)軟件工程師日夜勞作成果一夜之間被宣告作廢。
Linux :C
Apple MacOS : 主要為C,部分為C++。 備注: 之前用的語言比較雜,最早是匯編和Pascal。
Sun Solaris : C
HP-UX : C
Symbian OS : 匯編,主要為C++。 (諾基亞手機)
Google Android :2008 年推出: C語言(有傳言說是用Java開發(fā)的操作系統(tǒng),但最近剛推出原生的C語言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# (基于開源的 .net : Mono)
四、辦公軟件
Microsoft Office : 在 匯編 - C - 穩(wěn)定在C++
Sun Open Office : 部分JAVA(對外接口),主要為C++ (開源,可下載其源代碼)
Corel Office/WordPerfect Office : 1996年嘗試過Java,次年被拋棄,重新回到C/C++
Adobe Systems Acrobat Reader/Distiller : C++
五、關(guān)系型數(shù)據(jù)庫
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++ (手機上占用率比較大)
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 語言
七、郵件客戶端
Microsoft Outlook : C++
IBM Lotus Notes : Java
Foxmail : Delphi
八、軟件開發(fā)集成環(huán)境/IDE:
Microsoft Visual Studio : C++
Eclipse : Java (其圖形界面SWT基于C/C++)
Code::Blocks : C++
易語言: C++
火山中文: C++
火山移動: C++
九、虛擬機
Microsoft .Net CLR (.NET的虛擬機): C++
Java Virtual Machine (JVM) : Java 虛擬機:C++
十、ERP軟件 (企業(yè)應(yīng)用)
SAP mySAP ERP : C,后主要為“ABAP/4”語言
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++
星際爭霸、魔獸爭霸、CS、帝國時代、跑跑卡丁車、傳奇、魔獸世界.... 數(shù)不勝數(shù)了,自己數(shù)吧
都是用C++開發(fā)的,C++語言靠近系統(tǒng)地稱,執(zhí)行速度最快。比如你的兩個朋友與你分別玩用VB、Java、與C++編寫的“跑跑卡丁車”,你玩C++編寫的 游戲 已經(jīng)跑玩結(jié)束了,發(fā)現(xiàn)你的兩個朋友還沒開始跑呢,那是相當(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)頁服務(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,類Eclipse)
二十三:全球定位系統(tǒng)(GPS)
TomTom : C++
Hertz NeverLost : C++
Garmin : C++
Motorola VIAMOTO : 2007年6月,停止服務(wù)。 Java。
二十四:3D 引擎
Microsoft DirectX : C++(相信玩 游戲 的同學(xué)都知道這個,現(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)用軟件。開發(fā)軟件分為一次開發(fā)和二次開發(fā),比如開發(fā)操作系統(tǒng)(系統(tǒng)軟件),就是一次開發(fā);在操作基礎(chǔ)上進行應(yīng)用軟件的開發(fā),比如開發(fā) 游戲 ,就是二次開發(fā)。
一次開發(fā)的系統(tǒng)軟件,要直接調(diào)用硬件資源,必須使用簡單、直接的底層語言和中層語言,比如匯編和C語言;二次開發(fā)應(yīng)用軟件等,因為應(yīng)用軟件的類別比較多的,針對的情況比較復(fù)雜和具體,因此可以選擇的語言很多,比如,大數(shù)據(jù)人工智能方面的有Python;安卓手機APP就是Java等等。
這里還有一個誤區(qū),其實語言不重要,每種語言都差不多,重要的是開發(fā)環(huán)境和編程思想。要學(xué)習(xí)編程開發(fā),學(xué)的不是語言,而是對于開發(fā)環(huán)境工具的使用和編程思維的錘煉。很多著名的軟件都是用C等底層語言編寫的,但是也可以用其他語言編寫,不過很少學(xué)C了,其中有商業(yè)的原因。(后面會解釋)
集成開發(fā)環(huán)境軟件
計算機語言是不可以單獨拿出來說的,比如我們說C語言,指的是C語言編譯器,而Python語言,指的是Python解釋器。而編譯器和解釋器卻都是用C語言編寫,是不是很意外,所以著名的軟件一般都是系統(tǒng)軟件,使用的是C語言,一個語言就要初中水平就可以學(xué)會了,但必須了解IDE開發(fā)環(huán)境。
要使用計算機語言,就必須安裝編譯器,或者是解釋器,程序員是在TXT文本上編寫語言的,用編譯器可以一次性編譯為可執(zhí)行文件exe,用解釋器則可以逐條翻譯成機器語言并逐條執(zhí)行。編譯器速度快,解釋器可以跨系統(tǒng),到了別的系統(tǒng),不需要程序員改寫程序,換一個解釋器就行了。
IDE集成開發(fā)環(huán)境具備圖形操作界面、編譯器、調(diào)制器、控制臺,是非常重要的開發(fā)工具的,只會一個計算機的語言語法,卻不會使用IDE,基本上是沒用的!
編程思想
很多著名的軟件都是使用C等底層語言編寫的,而且所用的都是編譯器。當(dāng)然還有另外一個原因,就是編程思想,C語言是面向過程,Python是面向?qū)ο蟆:苊黠@,一次開發(fā)的系統(tǒng)軟件肯定是面向過程的,而面向具體使用場景的應(yīng)用軟件肯定是面向?qū)ο蟮摹?/p>
高手可以自由使用編程思想、程序編寫時,交替使用各種語言、切換解釋器或者編譯器,達到隱藏核心代碼目的;又或者軟件的核心模塊采用C等底層代碼,保證軟件的運行速度。畢竟開發(fā)時都是模塊化的,不同模塊使用不同的方法都是可以的!
所以很多著名的軟件,往往是混合著各種語言,核心部分是C,其他部分則根據(jù)不同的情況選用不同語言,之所以會這樣做,是因為使用C開發(fā)軟件要耗費大量的時間太。摩爾定律推動硬件發(fā)展,軟件開發(fā)也受到影響,一個軟件晚幾天推出市場,效果完全不同,所以程序員經(jīng)常加班趕工,速度才是最重要的。
總結(jié)
如上所述,著名的軟件是使用C等底層語言、編譯器語言、面向過程的語言編寫的,更多的是在一個軟件的核心部分使用C等底層語言、編譯器語言、面向過程的語言,其他則見機行事。
現(xiàn)在主流的語言是java、python和go
軟件開發(fā)主要用什么編程語言?
1、Java語言
作為跨平臺的語言,可以運行在Windows和Unix/Linux下面,長期成為用戶的首選。自JDK6.0以來,整體性能得到了極大的提高,市場使用率超過20%??赡芤呀?jīng)達到了其鼎盛時期了,不知道后面能維持多長時間。(推薦閱讀:Java 程序員必須掌握的 Linux 命令)
2、C/C++語言
以上2個作為傳統(tǒng)的語言,一直在效率第一的領(lǐng)域發(fā)揮著極大的影響力。像Java這類的語言,其核心都是用C/C++寫的。在高并發(fā)和實時處理,工控等領(lǐng)域更是首選。
3、PHP
同樣是跨平臺的腳本語言,在網(wǎng)站編程上成為了大家的首選,支持PHP的主機非常便宜,PHP+Linux+MySQL+Apache的組合簡單有效。
4、JavaScript
JavaScript是一種由Netscape的LiveScript發(fā)展而來的腳本語言,主要目的是為了解決服務(wù)器終端語言,比如Perl,遺留的速度問題。當(dāng)時服務(wù)端需要對數(shù)據(jù)進行驗證,由于網(wǎng)絡(luò)速度相當(dāng)緩慢,只有28.8kbps,驗證步驟浪費的時間太多。于是Netscape的瀏覽器Navigator加入了Javascript,提供了數(shù)據(jù)驗證的基本功能。
軟件開發(fā)的語言有哪些
常見的軟件開發(fā)語言:主流語言:C++,.NET,JAVA,DELPHI
etc.
。一般軟件開發(fā)公司是C++,跨平臺工程就要考慮了??偠灾珻為基礎(chǔ),掌握J(rèn)AVA,會用VB,了解python,應(yīng)該看得出這幾個詞匯之間的輕重差別吧。
拓展:
1.如果在國內(nèi)開發(fā)windows類型應(yīng)用程序,據(jù)說vb比較流行,但如果開發(fā)和硬件關(guān)系較大的嵌入式程序,則使用較多的還是C語言,而網(wǎng)絡(luò)這個方面,無論是有線還是無線,大多數(shù)都選擇了JAVA;
2.從應(yīng)用角度來講的,如果從性能和投入方面分析,C語言無疑性能上最好的,但它的復(fù)雜度太高,開發(fā)和維護費用較大,一般比較好的游戲程序或者速度要求較高的程序會選擇C++來開發(fā),而VB等由于它的簡易性,可以極大縮短開發(fā)周期,也是程序員的寵兒之一;
3.另外有一種語言python在國內(nèi)逐漸出現(xiàn),國外好像已經(jīng)流行了十幾年吧,linux的引導(dǎo)程序和BT的一些組件都是用它開發(fā)的,具有開發(fā)周期短,易維護等特點,運行速度也比JAVA要快,并且面向?qū)ο?,無平臺限制,據(jù)說還開放了源碼,不過由于在國內(nèi)流行時間不長,各大公司出于對以前開發(fā)代碼的兼容性的需要,可能一時間接受不這個語言,但可以明顯看出,它的發(fā)展?jié)摿ο喈?dāng)大。
主流軟件開發(fā)語言的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于主流軟件開發(fā)語言是什么、主流軟件開發(fā)語言的信息別忘了在本站進行查找喔。