Java二十年:它是如何永遠改變程式設計的。

banq發表於2015-05-23
來自Infoworld的一篇紀念Java誕生20週年的文章。主要講述了一些在今天習以為常但是在20年前卻難以想象的情況。

請記住,在1995年那時的程式設計不是一件很容易的事情,物件導向概念已經接受,但是很難實踐,那時沒有多少真正的物件導向語言,最多是將C程式碼粉飾一下,比如用class替代struct等,用這些技術編寫的程式經常由於指標錯誤或記憶體洩漏崩潰,原始碼僅僅能夠在Unix不同版本之間移植,使用同樣二進位制程式碼執行在不同處理器和作業系統上簡直是瘋狂的笑談。

Java改變了這一切,第一次我們使用一種跨平臺 垃圾回收和麵向物件的程式語言進行產品化的編碼,緊跟著Java的語言,比如最引人注目的C#,將Java建立的生產力提高到一個新高度。

Java開天闢地實現其他語言沒有的異常檢測,Java也是第一個在原生字元型別和原始碼中使用Unicode。(banq注:記得剛使用Java時最頭疼的是中文亂碼,後來發現透過統一UTF-8完美解決這個問題)

java的核心力量是它為做好工作建立一套實踐性的工具,它從早期語言匯入好的主意,然後以讓熟悉的格式包裝它們,儘管,Java不是一個嚴格的C的超集合(C++和Objective-C是),移除了一些東西以後,Java變得更簡單,更易於學習。

Java並沒有structs, unions, typedefs, 和header ,這是一個新的物件導向程式語言,沒有被要求能夠執行遺留老的程式碼,Java明智地忽略了一些在其他語言被嘗試然後發現不足的一些特點,比如多重繼承 指標運算和operator overloading,這種好的風格一直在Java中保持到現在。

正如Martin Fowler所說:在軟體開發領域從來沒有一種語言被這麼多人次和這麼多行程式碼使用,這種語言就是Java。

二十年以後,Java不再是新貴,它已經成為其他語言“造反”的物件,更輕量語言如Ruby和Python(banq注:還有Go語言與Rust語言的呢個)已經大舉進入Java領土,特別是追求開發速度的創業工作。

當然,Java也不是靜止不動,也正在不斷新增新的語言特點,比如函式語言的Lambda表示式等,這些新的程式設計方式還是Java領域新的概念。

儘管還有很多程式設計師不知道Java,但是無論他們知道與否,今天每一個程式設計師已經受到它的影響。

Java at 20: How it changed programming forever | I

點評:Java對每個程式設計師的影響可能還要首推Android安卓開發,因為後端開發語言選擇越來越多,而前端客戶端因為資源等影響,包括安卓的普及度,隨著智慧終端的發展和萬物聯網,藉助安卓平臺,Java可能會實現當初Java applet的夢想。

相關文章