這五大編程語言,主要用來開發什么?
首先,我們先普及一下編程語言的基礎知識。
用任何編程語言來開發程序,都是為了讓計算機干活,比如編寫一篇文章,下載一首MP3等,而計算機干活的CPU只認識機器的指令,所以,盡管不同的編程語言差異極大,最后都得“翻譯”成CPU可以執行的機器指令。
理論上任何語言干任何事情幾乎都可以,但是主要干什么那就不一樣了。
一、 Java
Java常常跟”企業”聯系在一起,因為具備一些很好的語言特性,以及豐富的框架,在企業應用中最被青睞,Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE。這三塊相互補充,應用范圍不同。Java可以做的東西很多,可以做游戲、做網站、做各種管理系統。
J2SE就是Java2的標準版,主要用于桌面應用軟件的編程;J2ME主要應用于嵌入是系統開發,如手機和PDA的編程;J2EE是Java2的企業版,主要用于分布式的網絡程序的開發,如電子商務網站和ERP系統。
同時,Java在手機領域也有一席之地, 在普遍智能化之前, 很多手機就是以支持java應用作為賣點的,而智能手機爆發之后, Java手機主場變成了Android,作為安卓的標準編程語言而存。
二、 C / C++
C/C++理論上說可以做任何開發,只要有合適的硬件驅動和API,特點是效率高,基本上是編譯語言里面效率最高的。除非你的系統中連C/C++編譯器都不具備。某些系統當中C++編譯器是不具備的,但是C一般都具備。
目前而言,C語言主要用來開發底層模塊(比如驅動、解碼器、算法實現),服務應用(比如web服務器)和嵌入式應用(比如微波爐里的程序)。C++也可以做這些,不過由于C++的復雜性和標準問題,人們還是更愿意使用C來做。
C++更適合比較復雜但又特別需要高效率的設施,比如大型游戲,一些基礎庫, 大型桌面應用。
三、Javascript
Javascript聽起來跟java有關系,其實并沒有任何關系,只是名字像而已。就好比雷峰塔和雷鋒的關系一樣,雖然只差一個字。
JavaScript 為 HTML 設計師提供了一種編程工具 HTML 創作者往往都不是程序員,但是 JavaScript 卻是一種只擁有極其簡單的語法的腳本語言!幾乎每個人都有能力將短小的代碼片斷放入他們的 HTML 頁面當中。
JavaScript 可以將動態的文本放入 HTML 頁面 類似于這樣的一段 JavaScript 聲明可以將一段可變的文本放入 HTML 頁面:document.write("" + name + "") 。
JavaScript 可以對事件作出響應 可以將 JavaScript 設置為當某事件發生時才會被執行,例如頁面載入完成或者當用戶點擊某個 HTML 元素時。
JavaScript 可被用來驗證數據 在數據被提交到服務器之前,JavaScript 可被用來驗證這些數據。
JavaScript 可被用來檢測訪問者的瀏覽器 JavaScript 可被用來檢測訪問者的瀏覽器,并根據所檢測到的瀏覽器,為這個瀏覽器載入相應的頁面。
js最廣泛的應用毫無疑問是在web前端。簡單的說,網站給你傳過來的是一堆用各種標簽表示格式的文檔,而js負責操縱這些文檔實現一些客戶端動態效果。js的領地還不僅如此,現在的Node.js還可以用于服務器端的開發。
四、php
PHP是一種被廣泛應用的開源通用腳本語言,尤其適用于 Web 開發并可嵌入 HTML 中去。 它的語法利用了C、Java 和Perl,易于學習。該語言的主要目標是允許 Web 開發人員快速編寫動態生成的 Web 頁面,但 PHP的用途遠不只于此。PHP還包含了命令列執行接口(command line interface),或者產生圖形使用者接口(GUI)程式。
目前PHP的應用范圍已經相當廣泛,尤其是在網頁程式的開發上。一般來說PHP大多執行在網頁服務器上,透過執行PHP程式碼來產生使用者瀏覽的網頁。PHP可以在多數的服務器和操作系統上執行,而且使用PHP完全是免費的。
五、Python
由于具有豐富和強大的庫,它又叫做作膠水語言,能夠把用其他語言制作的各種模塊(尤其是C/C++)很輕松地聯結在一起。
Python 的應用領域分為系統編程,用戶圖形接口,Internet 腳本,組件集成,數據庫編程,快速原型,數值計算和科學計算編程,游戲、圖像、人工智能、XML 、機器人編程等等。
常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然后對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而后封裝為Python可以調用的擴展類庫。Python是做服務器開發與物聯網開發。
信息安全,大數據處理,數據可視化機器學習,物聯網開發,各大軟件的api,桌面應用,都需要python。