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

(1)編程語言發展史擴展閱讀:
如果所使用的翻譯的機制是將所要翻譯的程序代碼作為一個整體翻譯,並之後運行內部格式,那麼這個翻譯過程就稱為編譯。
因此,一個編譯器是一個將可閱讀的程序文本作為輸入的數據,然後輸出可執行文件。所輸出的可執行文件可以是機器語言,由計算機的中央處理器直接運行,或者是某種模擬器的二進制代碼。
如果程序代碼是在運行時才即時翻譯,那麼這種翻譯機制就被稱作解譯。經解譯的程序運行速度往往比編譯的程序慢,但往往更具靈活性,因為它們能夠與執行環境互相作用。
⑵ c語言的發展史
C語言,是一種通用的、過程式的編程語言,廣泛用於系統與應用軟體的開發。具有高效、靈活、功能豐富、表達力強和較高的移植性等特點,在程序員中備受青睞。
C語言是由UNIX的研製者丹尼斯·里奇(Dennis Ritchie)於1970年 由 肯·湯普遜(Ken Thompson)所研製出的B語言的基礎上發展和完善起來的。目前,C語言編譯器普遍存在於各種不同的操作系統中,例如UNIX、MS-DOS、Microsoft Windows及Linux等。C語言的設計影響了許多後來的編程語言,例如C++、Objective-C、Java、C#等。
後來於1980年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局(American National Standard Institution)為C語言訂定了一套完整的國際標准語法,稱為ANSI C,作為C語言的標准。1980年代至今的有關程序開發工具,一般都支持符合ANSI C的語法。
C語言是一個程序語言,設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。C語言也很適合搭配匯編語言來使用。盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
早期發展
C語言最早是由丹尼斯·里奇為了在PDP-11電腦上運行的UNIX系統所設計出來的編程語言,第一次發展在1969年到1973年之間。之所以被稱為「C」是因為C語言的很多特性是由一種更早的被稱為B語言的編程語言中發展而來。早期操作系統的核心大多由匯編語言組成,隨著C語言的發展,C語言已經可以用來編寫操作系統的核心。1973年,Unix操作系統的核心正式用C語言改寫,這是C語言第一次應用在操作系統的核心編寫上。
K&R C
1978年,丹尼斯·里奇(Dennis Ritchie)和布萊恩·柯林漢(Brian Kernighan)合作出版了《C程序設計語言》的第一版。書中介紹的C語言標准也被C語言程序員稱作「K&R C」,第二版的書中也包含了一些ANSI C的標准。K&R C主要介紹了以下特色:
結構(struct)類型
長整數(long int)類型
無符號整數(unsigned int)類型
把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道用戶要處理i = -10還是i =- 10,使得處理上產生混淆。
即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最低標准要求,許多老舊的編譯仍然運行K&R C的標准。
ANSI C 和 ISO C
1989年,C語言被 ANSI 標准化(ANSI X3.159-1989)。標准化的一個目的是擴展K&R C。這個標准包括了一些新特性。在K&R出版後,一些新特性被非官方地加到C語言中。
void 函數
函數返回 struct 或 union 類型
void * 數據類型
在ANSI標准化自己的過程中,一些新的特性被加了進去。ANSI也規定了一套標准函數庫。ANSI ISO(國際標准化組織)成立 ISO/IEC JTC1/SC22/WG14 工作組,來規定國際標準的C語言。通過對ANSI標準的少量修改,最終通過了 ISO 9899:1990。隨後,ISO標准被 ANSI 採納。
傳統C語言到ANSI/ISO標准C語言的改進包括:
增加了真正的標准庫
新的預處理命令與特性
函數原型允許在函數申明中指定參數類型
一些新的關鍵字,包括 const、volatile 與 signed
寬字元、寬字元串與位元組多字元
對約定規則、聲明和類型檢查的許多小改動與澄清
WG14工作小組之後又於1995年,對1985年頒布的標准做了兩處技術修訂(缺陷修復)和一個補充(擴展)。下面是 1995 年做出的所有修改:
3 個新的標准庫頭文件 iso646.h、wctype.h 和 wchar.h
幾個新的記號與預定義宏,用於對國際化提供更好的支持
printf/sprintf 函數一系列新的格式代碼
大量的函數和一些類型與常量,用於多位元組字元和寬位元組字元
C99在ANSI的標准確立後,C語言的規范在一段時間內沒有大的變動,然而C++在自己的標准化創建過程中繼續發展壯大。《標准修正案一》在1995年為C語言創建了一個新標准,但是只修正了一些C89標准中的細節和增加更多更廣的國際字元集支持。不過,這個標准引出了1999年ISO 9899:1999的發表。它通常被稱為C99。C99被ANSI於2000年3月採用。
在C99中包括的特性有:
增加了對編譯器的限制,比如源程序每行要求至少支持到 4095 位元組,變數名函數名的要求支持到 63 位元組(extern 要求支持到 31)。
增強了預處理功能。例如:
宏支持取可變參數 #define Macro(...) __VA_ARGS__
使用宏的時候,允許省略參數,被省略的參數會被擴展成空串。
支持 // 開頭的單行注釋(這個特性實際上在C89的很多編譯器上已經被支持了)
增加了新關鍵字 restrict, inline, _Complex, _Imaginary, _Bool
支持 long long, long double _Complex, float _Complex 等類型
支持不定長的數組,即數組長度可以在運行時決定,比如利用變數作為數組長度。聲明時使用 int a[var] 的形式。不過考慮到效率和實現,不定長數組不能用在全局,或 struct 與 union 里。
變數聲明不必放在語句塊的開頭,for 語句提倡寫成 for(int i=0;i<100;++i) 的形式,即i 只在 for 語句塊內部有效。
允許採用(type_name){xx,xx,xx} 類似於 C++ 的構造函數的形式構造匿名的結構體。
初始化結構的時候允許對特定的元素賦值,形式為:
struct {int a[3],b;} foo[] = { [0].a = {1}, [1].a = 2 };
struct {int a, b, c, d;} foo = { .a = 1, .c = 3, 4, .b = 5} // 3,4 是對 .c,.d 賦值的
格式化字元串中,利用 \u 支持 unicode 的字元。
支持 16 進制的浮點數的描述。
printf scanf 的格式化串增加了對 long long int 類型的支持。
浮點數的內部數據描述支持了新標准,可以使用 #pragma 編譯器指令指定。
除了已有的 __line__ __file__ 以外,增加了 __func__ 得到當前的函數名。
允許編譯器化簡非常數的表達式。
修改了 / % 處理負數時的定義,這樣可以給出明確的結果,例如在C89中-22 / 7 = -3, -22 % 7 = -1 ,也可以-22 / 7= -4, -22 % 7 = 6。 而C99中明確為 -22 / 7 = -3, -22 % 7 = -1,只有一種結果。
取消了函數返回類型默認為 int 的規定。
允許 struct 定義的最後一個數組不指定其長度,寫做 [] 。
const const int i 將被當作 const int i 處理。
增加和修改了一些標准頭文件,比如定義 bool 的 <stdbool.h> ,定義一些標准長度的 int 的 <inttypes.h> ,定義復數的 <complex.h> ,定義寬字元的 <wctype.h> ,類似於泛型的數學函數 <tgmath.h>, 浮點數相關的 <fenv.h>。 在<stdarg.h> 增加了 va_ 用於復制 ... 的參數。<time.h> 里增加了 struct tmx ,對 struct tm 做了擴展。
輸入輸出對寬字元以及長整數等做了相應的支持。
⑶ 計算機編程語言的發展過程
簡單一點可以是:機器語言-匯編語言-高級語言……
⑷ 編程語言發展史
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
⑸ 編程語言的發展階段以及各階段的特徵
第一代是電子管計算機時代,從1946--1958年左右。這代計算機因採用電子管而體積大,耗電多,運算速度低,存儲容量小,可靠性差;
第二代是晶體管時代,約為1958--1964年。這代計算機比第一代計算機的性能提高了數10倍,軟體配置開始出現,一些高級程序設計語言相繼問世,外圍設備也由幾種增加到數十種。除科學計算而外,開始了數據處理和工業控制等應用;
第三代是集成電路(IC)計算機時代。約從1964--1970年。主要由中、小規模集成電路組成。其電路器件是在一塊幾平方毫米的晶元上集成了幾十個到幾百個電子元件,使計算機的體積和耗電顯著減少,計算速度、存儲容量、可靠性有較大的提高,有了操作系統,機種多樣化、系列化並和通訊技術結合,使計算機應用進入許多科學技術領域;
第四代便是大規模(LSI)電路計算機時代。從70年代到現在。大規模集成電路是在一塊幾平方毫米的半導體晶元上可以集成上千萬到十萬個電子元件,使得計算機體積更小,耗電更少,運算速度提高到每秒幾百萬次,計算機可靠性也進一步提高。
目前計算機技術已經在巨型化、微型化、網路化和人工智慧化等幾個得到了很大的發展.四個發展階段:
第一個發展階段:1946-1956年電子管計算機的時代。1946年第一台電子計算機問世美國賓西法尼亞大
學,它由馮·諾依曼設計的。佔地170平方 ,150KW。運算速度慢還沒有人快。是計算機發展歷史上的一個里程碑。(ENIAC)(electronic numerical integator and calculator)全稱叫「電子數值積分和計算機」。
第二個發展階段:1956-1964年晶體管的計算機時代:操作系統。
第三個發展階段:1964-1970年集成電路與大規模集成電路的計算機時代
(1964-1965)(1965-1970)
第四個發展階段:1970-現在:超大規模集成電路的計算機時代。
