JAVA能不能開發(fā)大型游戲?為什么?
網(wǎng)友解答: 呵呵!說到這個話題首先需要了解Java的特性,Java最初設計是為了能在嵌入式上使用,想取代C語言編程,可是由于歷史的發(fā)展,Java在網(wǎng)頁開發(fā)方面有了長足的發(fā)展,當時是sun
呵呵!說到這個話題首先需要了解Java的特性,Java最初設計是為了能在嵌入式上使用,想取代C語言編程,可是由于歷史的發(fā)展,Java在網(wǎng)頁開發(fā)方面有了長足的發(fā)展,當時是sun公司推出的編程語言,與此同時業(yè)界出現(xiàn)了很多優(yōu)秀的第三方開源開發(fā)框架,把Java瞬間推上了編程語言的榜首,當然Java的跨平臺特性為其更加贏得程序員的喜愛,高效自動化的內(nèi)存管理機制,讓她很快脫穎而出,各大軟件開發(fā)商都向Java語言靠攏,使的Java語言得到很大的開發(fā)市場,但Java語言在PC桌面級的應用程序開發(fā)的不是很多(我在這里都指的是大型軟件),因為先期對界面設計沒有很好的支持,當然現(xiàn)在已經(jīng)支持了界面設計;然而再從運行機制分析一下,Java跨平臺得益于Java虛擬機,Java編譯器首先會把Java編譯成與機器無關的中間碼(這個中間碼很類似于指定平臺的機器碼),最終需要在哪個平臺運行時在解釋成本平臺的機器碼,顯然這樣為了夸平臺卻犧牲了性能,當然目前可以有選項直接生成本地機器碼的可執(zhí)行程序,但我依然認為從性能上不及c于c++的運行性能,古話說得好魚和熊掌不可兼得;最后話鋒一轉,再談談今天的主題游戲開發(fā),現(xiàn)在游戲開發(fā)的核心引擎99%都是用的是c和c++開發(fā)的,在使用Java,c#,lua,JavaScript等語言作為游戲引擎的腳本開發(fā)語言,這樣就是一個最優(yōu)搭配,通過語言的優(yōu)缺點進行完美搭配,游戲核心引擎把幾乎所有與性能有關的功能全部實現(xiàn),游戲引擎給二次開發(fā)者提供了腳本語言,這使得游戲開發(fā)難度大大降低,同時也增加了程序的穩(wěn)定性(指針安全性),會根據(jù)語言的使用市場來擴大開發(fā)人群,這樣大型游戲開發(fā)難度成本和穩(wěn)定性就得到充分的權衡!綜上所述:Java是可以進行大型游戲開發(fā)的,但需選擇游戲引擎支持的游戲開發(fā)平臺,當然游戲平臺的支持很重要!以上所述僅代表本人個人觀點。喜歡的讀者可添加關注”嘿咪編程專家”酷米號或轉發(fā),私信留言都可交流,后續(xù)會有更精彩的回答與大家分享
網(wǎng)友解答:不能,java不能自己控制內(nèi)存,full gc的時候會有卡頓,而且很多引擎都是支持js或者c#的,所以java在游戲領域一般沒有什么作為,網(wǎng)游服務器一般也不會用java,因為不能調(diào)用底層io用c++的比較多