導航:首頁 > 編程語言 > 編程歷史

編程歷史

發布時間:2022-01-13 21:26:22

編程語言的歷史發展和特點

高級語言不需要對計算機的硬體有太多的了解就可以學習的語言,可移植性比較好;匯編語言屬於低級語言,它和計算機的硬體組織有關,首先,掌握CPU、存儲器、外設的工作原理;其次,掌握匯編語言的指令和偽指令的格式、功能、使用方法;最後,掌握程序設計結構、設計方法。
BASIC是初學者比較容易學習的高級語言,做為入門語言比較適合;
C是用途比較廣泛的面向過程的高級語言,但有些難度,尤其是指針;
c++語言和java語言是面向對象的高級語言,應用性比較廣泛.

㈡ 編程語言發展史

VB編程語言歷史=========
Visual Basic從1991年誕生以來,現在已經13年了。BASIC是微軟的起家產品,微軟當然不忘了這位功臣。隨著每一次微軟技術的浪潮,Visual Basic都會隨之獲得新生。可以預見,將來無論微軟又發明了什麼技術或平台,Visual Basic一定會首先以新的姿態登上去的。如果你想緊跟微軟,永遠在最新的技術上最快速地開發,你就應該選擇Visual Basic。

1991-西雅圖夜空的雷電
隨著Windows 3.0的推出,越來越多的開發商對這個圖形界面的操作系統產生了興趣,大量的Windows應用程序開始涌現。但是,Windows程序的開發相對於傳統的DOS有很大的不同,開發者必須將很多精力放在開發GUI上,這讓很多希望學習Windows開發的人員卻步。1991年,微軟公司展示了一個叫 Thunder的產品,所有的開發者都驚呆了,它竟然可以用滑鼠「畫」出所需的用戶界面,然後用簡單的BASIC語言編寫業務邏輯,就生成一個完整的應用程序。這種全新的「Visual」的開發就像雷電(Thunder)一樣,給Windows開發人員開辟了新的天地。這個產品最終被定名為Visual Basic,採用事件驅動,Quick BASIC的語法和可視化的IDE。Visual Basic 1.0帶來的最新的開發體驗就是事件驅動,它不同於傳統的過程式開發。同時,VBX控制項讓可視化組件的概念進入Visual Basic。Visual Basic 1.0是革命性的BASIC,它的誕生也是VB史上的一段佳話。

Visual Basic 1.0

1992-漸入佳境的Visual Basic
由於Windows 3.1的推出,Windows已經充分獲得了用戶的認可,Windows開發也進入一個新的時代。Visual Basic 1.0的功能過於簡單,相對於Windows 3.1的強大功能沒有發揮出來。所以,微軟在1992年推出了新版本Visual Basic 2.0。這個版本最大的改進就是加入了對象型變數,比如

Dim b As CommandButton

Dim c As Control

而且有了最原始的「繼承」概念,對象型變數分為一般類型(Control和Form)和專有類型(CommandButton和Form1等),一般類型的變數可以引用專有類型的實例,甚至通過後期綁定訪問專有類型的屬性和方法。還可以通過TypeOf…Is運算符獲取對象實例的運行時類型信息(這個功能就是當今C#的is運算符或Java的instanceof運算符)。除了對語言的改進和擴充,Visual Basic 2.0對VBX有了很好的支持,許多第三方控制項涌現出來,極大地豐富了Visual Basic的功能。微軟還為Visual Basic 2.0增加了OLE和簡單的數據訪問功能。

Visual Basic 2.0標准版

Visual Basic 2.0專業版

1993-資料庫組件新添力量
Visual Basic 2.0推出沒幾個月,微軟就發布了新版本的Visual Basic 3.0,可以看出VB這時候旺盛的生命力。乍一看,Visual Basic 3.0的界面沒有太大的變化,但其實這個版本是非常及時的。它增加了最新的ODBC2.0的支持,Jet數據引擎的支持和新版本OLE的支持。最吸引人的地方是它對資料庫的支持大大增強了,Grid控制項和數據控制項能夠創建出色的數據窗口應用程序,而Jet引擎讓Visual Basic能對最新的Access資料庫快速地訪問。Visual Basic 3.0還增加了許多新的金融函數。此外還增加了相當多的專業級控制項,可以開發出相當水平的Windows應用程序。Visual Basic 3.0是98年以前中國最流行的Visual Basic版本,因為它開發出來的可執行文件非常小,通常能用一張軟盤裝下。不過,Visual Basic採用虛擬機運行P代碼的做法也讓很多開發者不滿,他們認為這樣程序運行的效率很低,這時候Visual Basic的競爭者Delphi也誕生了。

Visual Basic 3.0標准版

Visual Basic 3.0特別版

1995-第二次革命性變化,向COM進軍。
從1993年到1995年年中,Visual Basic一直沒有新的動靜,焦急的開發者都想一窺這個神秘的新版本到底發生了什麼變化。Visual Basic 4.0的BETA最後終於和大家見面了。這個版本包含了16位和32位兩個版本,16位的版本就像是Visual Basic 3.0的升級版,而32位版則是一場新的革命。首先,人們發現VBX控制項不見了,全部換成了OCX控制項,這個OCX可能是指OLE Custom Controls,這個OLE已經不是傳統的OLE了,用現在的話說,它就是COM控制項。第二個最大變化是Visual Basic 4.0所用的語言換成了Visual Basic For Application,這就和Office 95所採用的宏語言統一起來,這個新語言有很多亮點:

1、? 加入了「類模塊」。這是面向對象最重要的封裝性的基礎。

2、? 加入了屬性過程,加上函數過程,子程序過程,VB已經有組件開發所需的封裝性特徵。

3、? 加入了Byte類型、Boolean類型和Object類型。這大大完善了VB的類型系統。

4、? For Each語句和Collection對象。For Each語句給遍歷集合類型提供了極大的方便,現在可以在動態增長的Collection上使用For Each,而不用擔心集合內容的總數或煩人的下標問題。

這個版本的Visual Basic還能夠開發DLL工程,其實就是COM的DLL,可以將書寫好的類用這種方式和其他語言共享。

總之,這個4.0的版本為Visual Basic成為一種COM語言奠定了基礎。用Visual Basic 4.0開發基於COM的DLL比任何一種開發工具都方便。但是,Visual Basic 4.0的性能問題變得更加嚴重了,P-代碼的組件成為Visual Basic 4.0嚴重的性能瓶頸,而且巨大的運行庫也讓用戶感到不滿。Visual Basic 4.0對以前版本的支持也不好,使用了大量VBX的項目很難移植到Visual Basic 4.0中。因此,Visual Basic 4.0在中國的普及程度非常低。

Visual Basic 4.0

1997-Visual Basic的豐收年
1997年,微軟推出了Visual Basic 5.0,這個版本的重要性幾乎和4.0一樣高。COM(這時候叫ActiveX)已經相當成熟,Visual Basic 5.0當然對它提供了最強的支持。不過,國內還沒有意識到COM的重要性前主要對這個版本另一個最大的亮點十分關註:本地代碼編譯器。Visual Basic 5.0終於在用戶的呼聲中加入了一個本地代碼編譯器,它可以讓應用程序的效率大大提升。除了這個大家都知道的改進以外,Visual Basic 5.0對Visual Basic For Application語言有重大的完善和豐富:

5、? 事件。Visual Basic 5.0終於允許用戶自己創建事件,而且這事件的語法相當強健和完善,這在一種不支持函數回調的語言中是很難得的。現在,VB擁有屬性、方法和事件的完整封裝性。

6、? 介面。這是VB實現多態性的基礎。同時為編寫COM組件提供了更多方便。

7、? 枚舉。在Visual Basic 5.0中枚舉作為Long整型的子類型出現,用枚舉可以對常量進行完善的封裝。

8、? 類模塊的改進。通過類模塊的屬性可以指定類模塊具有多種指定的行為,如私有構造函數等,可以通過這個功能創建符合Singleton和Monostate模式的設計。

9、? Debug.Assert。雖然這個斷言系統有點雞肋,但是總算是給調試帶來了方便。

10、 Visual Basic 5.0支持創建自己的集合類。可以創建用於For Each語句的集合類型。

11、新的數據類型Decimal,可以精確地處理有效數位較多的計算。

Visual Basic 5.0的IDE支持「智能感知」,這是一項非常方便開發者的功能,可以不必記住很長的成員名稱和關鍵字,只要按「.」,想要的東西統統彈出來。

Visual Basic 5.0還支持開發自己的ActiveX 控制項、進程內的COM DLL組件、進程外的COM EXE組件以及在瀏覽器中運行的ActiveX文檔。這極大豐富了Visual Basic的開發能力,在Internet開發上,Visual Basic 5.0也能有所建樹。

Visual Basic 5.0學習版——我的第一份正版VB

1998-企業真正高效的源泉
Visual Basic 6.0作為Visual Studio 6.0的一員發布,證明微軟正在改變Visual Basic的產品定位,他想讓Visual Basic成為企業級快速開發的利器。Visual Basic 6.0在數據訪問方面有了很大的改進,新的ADO組件讓對大量數據快速訪問成為可能。數據環境和新的報表功能也讓數據開發有了全新的體驗。Visual Basic 藉助COM/COM+強大的功能,可以開發具有N層結構的分布式應用程序。同時,Visual Basic還可以在IIS上開發性能超群的Web應用程序。Visual Basic 6.0在語言方面和IDE方面的改進都不大,但是許多新增的組件成為Visual Basic開發人員手中的利器,如File System Object等。新的字元串函數Split和Replace等也給Visual Basic的程序員帶來很大方便。

總之Visual Basic 6.0已經是非常成熟穩定的開發系統,能讓企業快速建立多層的系統以及Web應用程序,成為當前Windows上最流行的Visual Basic版本。

Visual Basic 6.0

2002-第三次革命性變化,向.NET進軍
從1998年發布到2002年正式推出Visual Basic. NET簡直吊足了開發者的胃口。從2000年就開始傳言的具有繼承、Try…Catch語句等新功能的全新VB7.0一直沒有露面。直到2001 年,Visual Studio.NET的第一個BETA版問世的時候,所有人都呆了——這是Visual Basic嗎?And語句變成了BitAnd,數組只能從0下標開始,而且連Dim語句的意義都變了,幾乎所有的窗體控制項都變了,Long變成了 Integer而Integer變成了Short,Variant不見了,Static不能用了……簡直是翻天覆地,人們已經無暇關注這個版本有什麼改進,轉而擔心我怎麼才能接受這個本本了。其實Visual Basic. NET完全是為了.NET Framework這一全新的平台而設計的,Visual Basic. NET的設計者一開始沒有掌握好新平台和舊語言的平衡。到了BETA2中,很多東西回歸了6.0,如BitAnd又變回了And,數組的定義語句也變回了原有的意義,Static也回到了Visual Basic中。但是BETA1驚人的變化讓所有的VB開發者怕了,他們覺得這種語言被改的千瘡百孔,有些人乾脆轉去研究傳說中的新語言C#。但是 Visual Basic. NET渡過幾個BETA版本之後還是找到了正確的定位。Visual Basic. NET有對CLR最完善的支持,同時盡量保留著BASIC易懂的語法風格和易用性。這個版本新增加的功能已經數不清,最重要的幾個是:

1、? 繼承。至此,Visual Basic完成了向面向對象轉變的道路。

2、? 共享成員。

3、? Try…Catch結構化異常處理。

4、? Delegate和Interface。

5、? 名稱空間。

6、? 對自由線程的支持。

特別的是,Visual Basic. NET大大減少了Visual Basic語言的關鍵字,如GoSub、PSet等等。原先的Visual Basic有多達120個關鍵字,這給寫程序帶來了很大的不便,現在經過精簡,Visual Basic脫下了這個沉重的包袱。

Visual Basic. NET現在是一門現代的、強壯的、面向對象的、簡單的可視化開發語言。強大的語言功能吸引了很多開發者。歷史是在不斷重演的,Visual Basic. NET如今的處境和Visual Basic 4.0很相似,由於兼容性變差,人氣也降低了。同時由於依附於.NET Framework,程序發布造成了一定的困難。現在國內使用Visual Basic. NET的人相對於Visual Basic 6.0來講顯得很少。但是憑借Visual Basic. NET強大的語言功能和MS的支持,Visual Basic. NET一定會顯出它的光輝來。

2003-穩中求變的新版本
Visual Basic. NET 2003是一個相當穩重的版本,改變很少,但對小處有很多改進。首先Visual Basic 6.0升級向導做了很大改進,這給從老版本痛苦升級的人帶來了更多一些的希望。其次在IDE方面,Visual Basic. NET 2003修正了許多錯誤,還讓事件處理恢復了6.0的開發體驗。語言方面只有兩項改進:

1、? 在For、For Each語句中聲明循環變數。

2、? 增加了數學移位運算符<<和>>。

在這個比較成熟穩定的新版本下,許多Visual Basic的愛好和開始重新了解Visual Basic. NET,社區裡面也漸漸熱鬧起來。但是,有些使用C#的開發者堅持認為Visual Basic. NET是垃圾,盡管Visual Basic. NET擁有比C#更多的功能和更好的IDE。這說明不了解Visual Basic. NET成為它普及的最大障礙。

2005-完美主義的Visual Basic,能否再現輝煌?
為了讓Visual Basic有最佳的開發體驗,Visual Basic 2005的設計者絞盡了腦汁。這次Visual Basic 2005光語言上的改進就足以讓Visual Basic的開發人員高興一陣子。大家可以去看看我那篇介紹Visual Basic 2005新增功能的貼子。挑重要的列在下邊:

1、? 泛型

2、? 運算符重載

3、? Partial Type

4、? 窗體的默認實例(讓你用VB6的語法使用窗體)

5、? 語法的多種改進

6、? My關鍵字

現在用Visual Basic 2005隻要一行代碼就可以讀寫注冊表、訪問文件、讀寫串口、獲取應用程序信息…… 用Visual Basic 2005完全可以稱作享受開發。而泛型、運算符重載等功能又可以讓Visual Basic的開發人員深入.NET Framework的全部功能,開發出最優秀的應用程序。

Visual Basic 2005預示著Visual Basic光明的前景,所有Visual Basic的愛好者和使用者都和我一起等待這個新版本吧。
C++編程語言歷史========
C++是從C語言發展而來的,而C語言的歷史可以追溯到1969年。 在1969年,美國貝爾實驗室的Ken Thompson為DEC PDP-7計算機設計了一個操作系統軟體,這就是最早的UNIX。接著,他又根據劍橋大學的Martin Richards設計的BCPL語言為UNIX設計了一種便於編寫系統軟體的語言,命名為B。B語言是一種無類型的語言,直接對機器字操作,這一點和後來的C語言有很大不同。作為系統軟體編程語言的第一個應用,Ken Thompson使用B語言重寫了其自身的解釋程序。 1972—1973年間,同在貝爾實驗室的Denis Ritchie改造了B語言,為其添加了數據類型的概念,並將原來的解釋程序改寫為可以在直接生成機器代碼的編譯程序,然後將其命名為C。1973 年,Ken Thompson小組在PDP-11機上用C重新改寫了UNIX的內核。與此同時,C語言的編譯程序也被移植到IBM 360/370、Honeywell 11以時VAX-11/780等多種計算機上,迅速成為應用最廣泛的系統程序設計語言。然而,C語言也存在一些缺陷,例如類型檢查機制相對較弱、缺少支持代碼重用的語言結構等,造成用C語言開發大程序比較困難。為了克服C語言存在的缺點,貝樂實驗室的Bjarne Stroustrup博士及其同事開始對C語言進行改進和擴充,將「類」的概念引入了C語言,構成了最早的C++語言(1983)。後來,Stroustrup和他的同事們又為C++引進了運算符重載、引用、虛函數等許多特性,並使之更加精煉,於1989後推出了AT&T C++ 2.0版。隨後美國國家標准化協會ANSI(American National Standard Instiute)和國際標准化組織ISO(International Standards Organization)一起進行了標准化工作,並於1998年正式發布了C++語言的國際標准ISO/IEC:98-14882。各軟體商推出的 C++編譯器都支持該標准,並有不同程序的拓展。 C++支持面向對象的程序設計方法,特別適合於中型和大型的軟體開發項目,從開發時間、費用到軟體的重用性、可擴充性、可維護性和可靠性等方面,C++均具有很大的優越性。同時,C++又是C語言的一個超集,這就使得許多C代碼不經修改就可被C++編譯通過。
JAVA編程語言歷史=========

Java,是一種可以編寫跨平台應用軟體的面向對象的程序設計語言,由Sun(太陽微電子,Sun Microsystems)公司的James Gosling等人於1990年代初開發。它最初被命名為Oak,作為一種小家用電器的編程語言,來解決諸如電視機、電話、鬧鍾、烤麵包機等家用電器的控制和通訊問題。由於這些智能化家電的市場需求沒有預期的高,Sun放棄了該項計劃。就在Oak幾近夭折之時,隨著Internet的發展,Sun看到了 Oak在計算機網路上的廣闊應用前景,於是改造了Oak,在1995年5月以"Java"的名稱正式發布了。Java伴隨著Internet的迅猛發展而發展,逐漸成為重要的Internet編程語言。

Java編程語言的風格十分接近C++語言。Java繼承了C++語言面向對象技術的核心,舍棄了C++語言中的指針(以引用取代)、運算符重載、多重繼承(以介面取代)等成分,增加了自動垃圾收集功能用於回收不再被引用的對象所佔據的內存空間。在J2SE1.5版本中Java又引入了泛型編程、類型安全的枚舉、不定長參數和自動裝/拆箱等語言特性。

Java不同於一般的編譯執行計算機語言和解釋執行計算機語言。它首先將源代碼編譯成位元組碼,然後依賴各種不同平台上的虛擬機來解釋執行位元組碼,從而實現了「一次編譯、到處執行」的跨平台特性。不過,這同時也在一定程度上降低了Java程序的運行效率。

Sun公司對Java編程語言的解釋是:Java編程語言是個簡單、面向對象、分布式、解釋性、健壯、安全與系統無關、可移植、高性能、多線程和動態的語言。

Java平台是基於Java語言的平台。這樣的平台目前非常流行,因此微軟公司推出了與之競爭的.NET平台以及模仿Java的C#語言。

目前Java提供以下三個版本:

J2ME(Java 2 Platform, Micro Edition):微型版的Java平台
J2SE(Java 2 Platform, Standard Edition):標准版的Java平台
J2EE(Java 2 Platform, Enterprise Edition):企業版的Java平台

Java的歷史:

1995年5月23日,Java語言誕生
1996年1月,第一個JDK-JDK1.0誕生
1996年4月,10個最主要的操作系統供應商申明將在其產品中嵌入JAVA技術
1996年9月,約8.3萬個網頁應用了JAVA技術來製作
1997年2月18日,JDK1.1發布
1997年4月2日,JavaOne會議召開,參與者逾一萬人,創當時全球同類會議規模之紀錄
1997年9月,JavaDeveloperConnection社區成員超過十萬
1998年2月,JDK1.1被下載超過2,000,000次
1998年12月8日,JAVA2企業平台J2EE發布
1999年6月,SUN公司發布Java的三個版本:標准版、企業版和微型版(J2SE、J2EE、J2ME)
2000年5月8日,JDK1.3發布
2000年5月29日,JDK1.4發布
2001年6月5日,NOKIA宣布,到2003年將出售1億部支持Java的手機
2001年9月24日,J2EE1.3發布
2002年2月26日,J2SE1.4發布,自此Java的計算能力有了大幅提升
2004年9月30日18:00PM,J2SE1.5發布,是Java語言的發展史上的又一里程碑事件。為了表示這個版本的重要性,J2SE1.5更名為J2SE5.0

㈢ 計算機程序設計語言的發展歷史

在過去的幾十年間,大量的程序設計語言被發明、被取代、被修改或組合在一起。盡管人們多次試圖創造一種通用的程序設計語言,卻沒有一次嘗試是成功的。之所以有那麼多種不同的編程語言存在的原因是,編寫程序的初衷其實也各不相同;新手與老手之間技術的差距非常大,而有許多語言並對新手來說太難學;還有,不同程序之間的運行成本(runtime cost)各不相同。
有許多用於特殊用途的語言,只在特殊情況下使用。例如,PHP專門用來顯示網頁;Perl更適合文本處理;C語言被廣泛用於操作系統和編譯器的開發(所謂的系統編程)。
高級程序設計語言(也稱高級語言)的出現使得計算機程序設計語言不再過度地倚賴某種特定的機器或環境。這是因為高級語言在不同的平台上會被編譯成不同的機器語言,而不是直接被機器執行。最早出現的編程語言之一FORTRAN的一個主要目標,就是實現平台獨立。

㈣ 簡述計算機編程語言發展歷史

fortran、algol、cobol、lisp(和其各種scheme方言)、ada、pascal、basic、smalltalk等等,還有許多,找本關於計算科學的歷史書看看就知道了,或到wikipedia去查相關目錄。fortran主要用於科學計算,現有的程序庫是大多是用其編寫的;C的發明借鑒了algol的內容;過去商務計算大都用cobol,因為cobol和英語很接近;lisp多用於人工智慧領域,當然用來描述演算法也是很好的,其它的就不多說了,自己查查吧。

㈤ 計算機程序設計的發展史

計算機語言的發展歷史:
二十世紀四十年代當計算機剛剛問世的時候,程序員必須手動控制計算機。當時的計算機十分昂貴,唯一想到利用程序設計語言來解決問題的人是德國工程師楚澤(konrad
zuse)。幾十年後,計算機的價格大幅度下跌,而計算機程序也越來越復雜。也就是說,開發時間已經遠比運行時間來得寶貴。於是,新的集成、可視的開發環境越來越流行。它們減少了所付出的時間、金錢(以及腦細胞)。只要輕敲幾個鍵,一整段代碼就可以使用了。這也得益於可以重用的程序代碼庫。隨著c,pascal,fortran,等結構化高級語言的誕生,使程序員可以離開機器層次,在更抽象的層次上表達意圖。由此誕生的三種重要控制結構,以及一些基本數據類型都能夠很好的開始讓程序員以接近問題本質的方式去思考和描述問題。隨著程序規模的不斷擴大,在60年代末期出現了軟體危機,在當時的程序設計模型中都無法克服錯誤隨著代碼的擴大而級數般的擴大,以至到了無法控制的地步,這個時候就出現了一種新的思考程序設計方式和程序設計模型-----面向對象程序設計,由此也誕生了一批支持此技術的程序設計語言,比如eiffel,c++,java,這些語言都以新的觀點去看待問題,即問題就是由各種不同屬性的對象以及對象之間的消息傳遞構成。面向對象語言由此必須支持新的程序設計技術,例如:數據隱藏,數據抽象,用戶定義類型,繼承,多態等等。

㈥ 編程語言的歷史來源

C語言的起源以及類似C語言的編程語言的歷史簡直不要太漫長,我簡單總結列表如下:
CPL(Combined Programming Language) - 1963
CPL是1963年劍橋大學發明的
BCPL(Base Combined Programming Language) - 1967
劍橋的Matin Richards 對CPL做了簡化,推出了BCPL
B(B Programming Language) - 1969
貝爾實驗室的Ken Thompson(肯·湯普森) 對BCPL又做了改進,設計出了簡單的且接近硬體的B語言,並用B語言寫了第一個UNIX OS
C(C Programming Language) - 1972
貝爾實驗室的另外一個人Dennis MacAlistair Ritchie(D.M.Ritchie - DM里奇)在B的基礎上設計出了C語言。C 保持了B的優點(精煉、接近硬體),又克服了他的缺點(過於簡單,數據無類型)
C++(C plus plus Programming Language) - 1983
還是貝爾實驗室的人,Bjarne Stroustrup(本賈尼·斯特勞斯特盧普) 在C語言的基礎上推出了C++,它擴充和完善了C語言,特別是在面向對象編程方面。一定程度上克服了C語言編寫大型程序時的不足。
Java(Java Programming Language) - 1995
Sun公司的Patrick Naughton的工作小組研發了Java語言,主要成員是James Gosling(詹姆斯·高斯林)
C#(C Sharp Programming Language) - 2000
Microsoft公司的Anders Hejlsberg(安德斯·海爾斯伯格)發明了C#,他也是Delphi語言之父。

㈦ 編程語言的歷史

在過去的幾十年間,大量的程序設計語言被發明、被取代、被修改或組合在一起。盡管人們多次試圖創造一種通用的程序設計語言,卻沒有一次嘗試是成功的。之所以有那麼多種不同的編程語言存在的原因是,編寫程序的初衷其實也各不相同;新手與老手之間技術的差距非常大,而有許多語言並對新手來說太難學;還有,不同程序之間的運行成本(runtime cost)各不相同。

有許多用於特殊用途的語言,只在特殊情況下使用。例如,PHP專門用來顯示網頁;Perl更適合文本處理;C語言被廣泛用於操作系統和編譯器的開發(所謂的系統編程)。

程序設計語言使得計算機程序不再過度地倚賴某種特定的機器或環境。這是因為程序設計語言在不同的平台上會被編譯成不同的機器語言,而不是直接被機器執行。最早出現的編程語言之一FORTRAN的一個主要目標,就是實現平台獨立。

雖然大多數的語言可以既被編譯(compiled)又被解譯(interpreted),但大多數只在一種情況下能夠良好運行。在一些編程系統中,程序要經過幾個階段的編譯,一般而言,後階段的編譯往往更接近機器語言。這種常用的使用技巧最早在1960年代末用於BCPL,編譯程序先編譯一個叫做「0代碼」的轉換程序(representation),然後再使用虛擬器轉換到可以運行於機器上的真實代碼。這種成功的技巧之後又用於Pascal和P-code,以及Smalltalk和二進制碼,雖然在很多時候,中間過渡的代碼往往是解譯,而不是編譯的。

如果所使用的翻譯的機制是將所要翻譯的程序代碼作為一個整體翻譯,並之後運行內部格式,那麼這個翻譯過程就被成為編譯。因此,一個編譯器是一個將人可閱讀的程序文本(叫做源代碼)作為輸入的數據,然後輸出可執行文件(object code)。所輸出的可執行文件可以是機器語言,由計算機的中央處理器直接運行,或者是某種模擬器的二進制代碼。

如果程序代碼是在運行時才即時翻譯,那麼這種翻譯機制就被稱作解譯。經解譯的程序運行速度往往比編譯的程序慢,但往往更具靈活性,因為它們能夠與執行環境互相作用。參見解譯語言。

目錄 [顯示隱藏]
1 特點

1.1 數據和數據結構
1.2 指令及流程式控制制
1.3 引用機制和重用

2 程序設計語言的歷史

3 常見的程序設計語言

[編輯]特點
每一種程序設計語言可以被看作是一套包含語法、詞彙和含義的正式規范。

這些規范通常包括:

數據和數據結構
指令及流程式控制制
引用機制和重用
設計哲學
大多數被廣泛使用或經久不衰的語言,擁有負責標准化的組織,經常會晤來創造及發布該語言的正式定義,並討論擴展或貫徹現有的定義。

[編輯]數據和數據結構
現代計算機內部的數據都只以二元方式儲存,即開-關模式(on-off)。現實世界中代表信息的各種數據,例如名字、銀行賬號、度量以及同樣低端的二元數據,都經由程序設計語言整理,成為高端的概念。

一個程序中專門處理數據的那個系統被稱為程序語言的型態系統(type system);對型態系統的研究和設計被稱為型態理論(type theory)。語言可以被分為靜態型態系統(statically typed systems),例如C++和Java,和動態型態系統(dynamically typed systems),例如Lisp,JavaScript,Tcl和Prolog。前者可被進一步分為包含宣告型態(manifest type)的語言,即每一個變數和函數的型態都清楚地宣告,或type-inferred語言(例如MUMPS,ML)。

大多數語言還能夠在內置的型態基礎上組合出復雜的數據結構型態(使用數組,列表,堆棧,文件等等)。面向對象語言(Object Oriented Language,又譯作物件導向語言)允許程序員定義新的數據型態,即「對象」或「物件」(objects),以及運行於該對象的函數(functions)和方法(methods)。

除了何時以及如何確定表達式和型態的聯系,另外一個重要的問題就是語言到底定義了哪些型態,以及允許哪些型態作為表達式的值。諸如C編程語言之類的低端語言允許程序命名內存位置、內存區域以及編譯時的常量;ANSI C甚至允許表達式返回結構值(struct values)。功能性的語言一般允許變數直接使用運行時計算出的值,而不是指出該值可能儲存的內存地址。

[編輯]指令及流程式控制制
一旦數據被確定,機器必須被告知如何對這些數據進行處理。較簡單的指令可以使用關鍵字或定義好的語法結構來完成。不同的語言利用序列系統來取得或組合這些語句。除此之外,一個語言中的其他指令也可以用來控制處理的過程(例如分支、循環等)。

[編輯]引用機制和重用
引用的中心思想是必須有一種間接設計儲存空間的方法。最常見的方法是通過命名變數。根據不同的語言,進一步的引用可以包括指向其他儲存空間的指針。還有一種類似的方法就是命名一組指令。大多數程序設計語言使用宏調用、過程調用或函數調用。使用這些代替的名字能讓程序更靈活,並更具重用性。

[編輯]程序設計語言的歷史
二十世紀四十年代當計算機剛剛問世的時候,程序員必須手動控制計算機。當時的計算機十分昂貴,唯一想到利用程序設計語言來解決問題的人是德國工程師楚澤(Konrad Zuse)。

幾十年後,計算機的價格大幅度下跌,而計算機程序也越來越復雜。也就是說,開發時間已經遠比運行時間來得寶貴。

於是,新的集成、可視的開發環境越來越流行。它們減少了所付出的時間、金錢(以及腦細胞)。只要輕敲幾個鍵,一整段代碼就可以使用了。這也得益於可以重用的程序代碼庫。

[編輯]常見的程序設計語言
APL、A+和J
ASP
Ada
匯編語言
AWK
Basic、Fortran
Brainfuck
C、C++
C#
Clipper
COBOL
dBase
PASCAL、Delphi
Forth
FoxPro
F#
IDL
Java
JavaScript
J#
LISP
LOGO
Mola
Perl
PHP
PL/1
Prolog
Python
Ruby
Scheme
Smalltalk
SQL
Tcl/Tk
UML
Visual Basic
Visual FoxPro

參考文獻:維基網路

㈧ 中文編程語言的歷史

最早出現的編程軟體大多為英語環境,對於習慣使用中文的人,為了編程不但需要學會編程規則,還要學會英語,這對不諳英文的人構成了一個較大的障礙。相對於印度,由於有較好的英語環境,軟體外包發展較快,而中國則只是因為英語的問題造成軟體外包一直很難發展。使用中文編程語言,不需要記住大量的英文語句,中文使用者可以在自己母語的基礎上從更高方面入手。而且可以減少學習英語的成本,為漢語區的軟體產業發展提供幫助。主要理論是,相對於印度,中國基本上在軟體產業之外的領域都領先於印度,但是由於編程大多需要較高的英文水平,造成成本較高而不能參與國際競爭。
要點:主要要有一個合理的語法。

閱讀全文

與編程歷史相關的資料

熱點內容
初次認識控制命令完整版 瀏覽:255
雙屏程序員 瀏覽:799
怎麼把兩個文件夾放到一個文件夾裡面 瀏覽:545
命令與征服大神宮 瀏覽:207
php發送簡訊驗證碼 瀏覽:505
前端伺服器如何接收http請求 瀏覽:796
程序員資質查詢 瀏覽:357
程序員被別人開除怎麼辦 瀏覽:888
解壓視頻看一下 瀏覽:129
android仿知乎日報 瀏覽:335
為什麼前端比安卓手機需求大 瀏覽:855
命令行執行關機命令 瀏覽:52
在學校心情不好怎麼解壓 瀏覽:116
我的世界基岩版伺服器怎麼讀取 瀏覽:161
快件命令 瀏覽:853
阿里雲06折伺服器能用嗎 瀏覽:421
h5個人中心源碼 瀏覽:221
下三角矩陣的壓縮存儲 瀏覽:922
招人用什麼app好用 瀏覽:722
飛行控制源碼 瀏覽:185