2010年6月19日 星期六

Java 語言的優勢 #3



架構中立
現今網路上的電腦或資訊裝置可以說是五化八門(個人電腦、手機、PDA、大型工作站),
許多不同的電腦所採用的硬體架構皆不盡相同,處理器的種類可能16bit、32bit 或64bit,
所採用的指令集也有所差異,對於未來的電腦構架會出現什麼樣的變化我們更是無法掌握,但
是透過JavaVM 定義規格中所產生的中立性的物件,可以讓這些位元碼得以在不同處理器的電
腦中執行。

※ 高效能
Java 是一個高效能的程式語言,這個說法可能有許人都不讚同,但是需注意到Java 並非
是為某一個平特定平台所設計的語言,而是將程式碼先轉換成位元碼(ByteCode)在執行時期才
依不同平台將位元碼轉換成對應該平台的機械碼。其實Java 程式由位元碼轉透過JavaVM 轉換
成機械碼所花費的時間與C/C++效能機乎是沒有什麼分別的(註),但是JavaVM 啓動需要花費
一些時間進行初始化以及進行記憶體分配的動作,所以在初次執行Java 程式會感覺到有點
慢,但在第二次重覆執行時便會不需要在花費時間進行載入動作。

※ 多執行緒
所謂的多執行緒,就是多工的意思( 代表在同一個時間內,可以做許多不同的事情),就
像有些人在吃飯時可以一邊看電視同時一邊進行呼吸與思考的動作,Java 語言當初在推出時
這算是一項蠻重大的特色,當初本質上支持多執行緒的語言本不多,不過目前許多其他的語言
如C#、C++、VB 等都己經可以達到多執行緒的功能了。

※ 動態鏈結
由於Java 是利用位元碼於執行期間再進行翻譯的動作,程式可以在執行期間載入物件並
對同時決定與確認對物件的存取條件,因此Java 程式相當好的動態性,可以在不停止原程式
的運作下,自由的加入新的方法或變數或是更換掉原有的物件,而不妨礙原有程式的正確性。

沒有留言:

張貼留言