四川大學 韓震博
計算機軟件開發語言的研究與探討
四川大學 韓震博
隨著現代軟件開發的需求多種多樣,計算機軟件開發語言也得到快速的發展,并且更加多樣化。常見的計算機軟件開發語言分為面向過程的開發語言、面向對象的開發語言和腳本開發語言。面向過程的開發語言的代表是C語言和Basic語言,面向對象的開發語言的代表是C#和JAVA,腳本開發語言的代表是PHP、JavaScript和Python等。軟件開發根據需求和效率的要求,逐漸從單一的開發語言到多種開發語言相結合。軟件開發語言的發展使開發能力得到提升,使開發效率也得到提高。
計算機軟件;軟件開發語言;JAVA;C#
全球社會經濟和科學水平的發展和進步,計算機技術已經進入到各行各業,并且在社會生活中起著最重要的地位。計算機應用領域的擴展、需求的多樣化促進了計算機軟件開發語言的變革和發展。縱觀歷史,計算機開發語言起初為低級的穿孔打卡,發展到面向過程的高級開發語言,隨后發展到面向對象的開發語言,現如今發展到多種開發語言并存的局面。多種開發語言并存的現狀能夠滿足多樣化和豐富化的開發需求。
2.1高級開發語言
C語言是目前使用最廣泛的開發語言之一,主要是為了簡化編程、提供硬件使用率和處理速度為目的設計的。C語言的特點是簡潔靈活、運算符和數據類型完善、允許操作計算機的物理地址和可移植性好。現如今主要利用C語言開發操作計算機硬件的相關程序和底層應用開發,因此C語言仍然是使用率名列前茅的開發語言。
Pascal語言是1967年有Niklaus Wirth開發的,并與1971年完成的開發語言。Pascal語言的主要特點是具有嚴格的結構化形式、完善的數據類型、高效的運行效率以及很強的查錯能力。因此Pascal語言應用于各種算法的設計、DOS環境的開發與數據結構的開發。Pascal仍然被一部分開發者所使用。
2.2面向對象的開發語言
Java語言是一種面向對象開發語言,最主要的三大特征是封裝、繼承和多態。Java對類進行了屬性和方法的封裝,從而實現對屬性和方法的隱藏,提高程序的安全性。Java的繼承實現了子類與父類的繼承關系,從而豐富了對象的關系,以實現現實世界的對象關系。Java的多態性是從時間角度對軟件開發進行的研究,主要包括設計時多態和運行時多態,設計時多態主要表現在方法的重載。Java本身具有虛擬機,在運行Java程序時啟動Java的虛擬機,然后再虛擬機上實現Java程序的運行,這種無平臺無關的方式使Java具有較高的可移植性。Java語言還主要應用于web網站開發,由于Java具有安全性高、可移植性強和編程便捷等特點,因此大部分web網站開發采用Java開發語言。Java的缺點是圖形接口和客戶端仍然不完善,因此Java在客戶端的開發中仍然很少。
C#語言是一種面向對象開發的代表,C#以Microsoft .NET平臺為基礎,是程序員能夠快速的編寫和操作Windows組件,以實現軟件的開發。C#主要應用于客戶端程序的開發,與Windows系統的界面樣式一致,解決了Java圖像化接口的問題,因此C#占領了大部分客戶端開發市場。ASP.NET以C#為基礎的開發,由于采用.NET平臺進行網站開發,因此ASP.NET開發簡單和高效,所以ASP.NET的網站開發在web開發中也占領了一席之地。ASP.NET的網站主要依賴于IIS發布,因此ASP.NET跨平臺性不佳。綜上所述,C#是一種高效的開發語言,并且依托于Windows系統組件,能夠快速開發出適應Windows系統的軟件,也能夠快速完成ASP.NET網站的建設,但是由于ISS發布平臺的限制,因此C#更傾向于客戶端軟件開發。
2.3腳本語言
PHP語言是一種用于與瀏覽器進行交互的腳本語言,也是現今網站開發主要選用的語言之一。Python語言是腳本語言,其設計思想結合了面向對象開發思想和面向模塊開發的思想,程序開發簡潔。Python還為程序員提供了大量的基礎代碼庫,包括網絡操作、文件處理、GUI圖像處理、數據庫操作和文本操作等代碼庫,避免了基礎功能的開發工作。此外第三方還提供了大量的代碼庫,這些代碼庫能夠實現科學計算、圖像算法、爬蟲技術和深度學習等技術,為程序員的軟件開發提供便利,自己的代碼也可以 進行封裝,其他開發人員只需要調用自己的庫既能實現自己代碼功能,適合團隊項目的開發。因此Python也是現如今主要開發語言之一,包括Google和YouTube都大量采用Python進行項目研發。
R語言是一種數據統計和分析的開發語言,其本身具有強大的數據統計、數據分析和人工智能等分析能力。R語言為了實現數據的統計與分析,提供了矩陣的概念,數學方法中很多利用到矩陣的知識,因此R語言的數據分析能力遠遠高于其他開發語言。為了處理大量的數據分析,R語言實現了與Hadoop互聯的功能,能夠直接讀取Hadoop文件系統的問題。因此R語言在數據統計和分析領域得到了極大地發展,并逐漸趕超應用MATLAB。
JavaScript是一種為瀏覽器顯示和與后臺程序相交互的腳本語言,JavaScript能夠實現前臺的特效展示,也能實現后臺數據的展示。JavaScript也提供了一些技術,以此實現前臺頁面與后臺程序的交互,例如ajax技術和json技術。Ajax能夠將前臺操作返回到Java等程序進行操作處理,也能將Java等程序操作返回到前臺進行展示。
我們主要從軟件開發語言的發展和分類對軟件開發語言進行了探討,軟件開發語言經歷了低級語言和高級語言,軟件開發語言的分類包括高級開發語言、面向對象開發語言和腳本語言。通過對軟件開發語言市場的描述,軟件開發已經從單一化語言發展到多元化共用。一個項目的研發需要結合多種語言,以此實現軟件的高效率和多樣化功能。例如開發一個web網站,后臺語言可以選擇C#、Java、PHP或者Python,前臺都需要HTML和JavaScript語言。開發一個項目也可能后臺語言選擇多種,例如Python進行科學計算和統計將處理的結果存儲到數據庫,然后利用Java或者PHP等實現數據庫數據的后期操作和展示等。因此最后得出軟件開發語言的發展將以多元化的角度進行發展,Java和C#等繼續完善,提高軟件性能,PHP等提供網站的便利開發,Python和R語言等提供科學計算和數據統計等。各有其發展的方向,軟件的開發也將繼承所有開發語言的優點,以此提高軟件開發的效率和軟件的質量。
[1]Torgo L,李洪成,陳道輪等.數據挖掘與R語言[J].計算機教育,2013,9:027.
[2]趙宣容.計算機軟件開發語言分析[J].信息通信,2015(7):142-143.
韓震博(1997—),男,山東青島人,研究方向:計算機科學與技術。