現在學JAVA的人非常多,但在學之前最好能明確自己以後的發展方向,那樣才能少走彎路,達到你最終目標。簡單來說JAVA的三個方向分別是:開發桌面應用程序;開發手機游戲;開發企業級大型應用程序。而現在最熱的就是JAVA游戲編程,現在大部分學Java的人都是向這方面發展的,而且Java游戲編程人員也是國內現階段最緊缺的人才。
JAVA技術的飛速發展讓JAVA程序的運行速度有了顯著提升,同時硬件技術也在不斷進步,從而使得JAVA處理比較復雜的3D圖形成為可能。 Lwjgl,Jogl,Java3D等技術的出現,使JAVA語言可以方便的利用現在的顯卡日益強大的硬件加速能力。實際上目前已經有許多基於JAVA的 2D和3D游戲,其中不乏大型多人在線游戲。JAVA語言稱霸企業級應用這麼多年,事實證明了它非常適合於開發大型軟件。當JAVA的運行效率不再是問題的時候,Java語言嚴謹、高抽象、可讀性強的優勢就體現出來了。這對於規模越來越龐大的游戲軟件來說,有著不小的誘惑。
我們先來說一下Java在游戲開發中的優勢:
(1)Java是一門經過充分發展,並且成熟的語言。
JAVA語言稱霸企業級應用這麼多年,事實證明了它非常適合於開發大型軟件。當JAVA的運行效率不再是問題的時候,Java語言嚴謹、高抽象、可讀性強的優勢就體現出來了。這對於規模越來越龐大的游戲軟件來說,有著不小的誘惑。
(2)用Java作為平台,方便了游戲腳本的使用
對於游戲開發來說,由於涉及到比較復雜的情況(有時候甚至是美學問題),開發過程很多時候是一個不斷修改的過程,可以方便的修改游戲內容是十分關鍵的。對於很多游戲引擎來說,都有自己編寫的腳本解釋器,用來解釋一些自定義的游戲腳本語言,另一些則提供了例如lua和rubby等的腳本語言來訪問游戲引擎。由於其虛擬機特性,JAVA本身就可以用來編寫游戲腳本,目前也有例如beanshell、groovy等腳本語言可以方便的無縫的和JAVA 語言進行交互,這些都極大的方便了Java游戲編程。
(3)網絡游戲方面
JAVA一向強於解決網絡方面的問題,在這方面,JAVA主要有兩個優勢,第一是基於applet和java web start的游戲非常容易更新,不會像其他游戲那樣需要用戶手動下載全新版本;第二是Java在網絡交互的api相對比較友好,而對於大型網絡游戲來說,分布式系統非常重要,這正是jcp的巨頭們喜歡的東西,可能由於這是一個賣硬件的好機會,sun下了不少功夫開發了project dark star來做網絡游戲服務端。
這回知道JAVA在游戲開發中占據的重要作用了吧,想想現在火爆的手機游戲,絕大多數都是由JAVA開發的,光從這一點就能看出JAVA游戲開發的火熱程度,相應的Java游戲開發培訓在國內也是非常流行。
上邊已經介紹了Java游戲編程為什麼會在短時間發展這麼快速,當然,不管是硬件方面還是軟件方面都是不可缺少的因素。現階段火熱的JAVA游戲還會持續很久,想在JAVA工程師這塊發展的朋友不妨考慮一下Java游戲方向,畢竟這方面的用戶群非常大,學好後根本不愁找不到工作。