国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java游戲開發(fā)(為什么Java不適合游戲開發(fā)?)

為什么Java不適合游戲開發(fā)?作為一個多年的游戲服務(wù)器開發(fā)者,我來回答這個問題。只要你仔細(xì)看看招聘網(wǎng)站,就會發(fā)現(xiàn)游戲里的java招數(shù)很少(希望打孔機不要推杠,我說很少,不是說一個都沒有)。那么為什么其

java游戲開發(fā)(為什么Java不適合游戲開發(fā)?)

為什么Java不適合游戲開發(fā)?

作為一個多年的游戲服務(wù)器開發(fā)者,我來回答這個問題。只要你仔細(xì)看看招聘網(wǎng)站,就會發(fā)現(xiàn)游戲里的java招數(shù)很少(希望打孔機不要推杠,我說很少,不是說一個都沒有)。那么為什么其他領(lǐng)域的霸主沒有資格在游戲行業(yè)喝湯呢?其實主要有兩個原因,而且都和程序員最關(guān)心的效率有關(guān),一個是開發(fā)效率,一個是運行效率。可惜作為一個可憐的java,你不能兩者兼得。

首先,開發(fā)效率。前幾年手機游戲開始流行,游戲公司多,產(chǎn)品相似度高。那么,如何才能以最快的速度開發(fā)出游戲,并投入線上運營呢?通過快速迭代中的試錯,減少開發(fā)周期就是減少開發(fā)成本。在這種環(huán)境下,很多腳本語言成為了首選,比如nodejs、php甚至lua、python。(這里再多說一句,雖然lua語言本身很簡單,但實際上游戲領(lǐng)域使用lua的成本是很高的,至少是四種腳本語言中最高的,因為它只是一種膠水語言,而且還得依附于C/C,作為圍繞游戲的庫,你得自己搭建或者自己找輪子。同時,對于發(fā)動機部分,對于發(fā)動機部分,它是最高的。Java相對于這些腳本語言沒有優(yōu)勢。Nodejs開箱即用,可以和js一起寫前后(html5的普及讓這種情況越來越多)。Php好用,開發(fā)簡單,和一些使用http的弱交互游戲一樣,熱更新簡直不要太爽,沒有修復(fù)bug的感知。一些簡單的休閑游戲可以用這些腳本語言快速完成。以之前流行的刀塔傳奇為例。這些腳本語言完全沒有壓力,尤其是對于桌游,腳本語言是首選。

其次,我們來談?wù)勥\營效率。在一些計算密集型游戲中,C是首選。在一些大型游戲中,計算要求高,業(yè)務(wù)邏輯復(fù)雜的情況下,提高效率可以容納更多的在線人數(shù),也是一種成本的降低。同時對內(nèi)存要求也高。用C可以算內(nèi)存寫代碼(手法太夸張了【捂臉】)。當(dāng)對象被應(yīng)用和釋放時,程序員說了算。gc消耗不存在。但是java生成字節(jié)碼,代碼執(zhí)行要通過jvm運行,所以中間的消耗對于那些對性能要求嚴(yán)格的程序來說是絕對不能接受的。

總結(jié)以上兩點,java是介于運行效率和開發(fā)效率之間的語言,在游戲行業(yè)自然不會受到青睞。

為什么Java不適合游戲開發(fā)?

做游戲引擎,當(dāng)然要看性能。c的性能最好。Java的性能其實很好。讓我們看看誰能提出一個簡單快速的框架。

0-@qq.com

JAVA可以用于游戲服務(wù)器的開發(fā),也就是網(wǎng)絡(luò)游戲的開發(fā)。網(wǎng)絡(luò)游戲具有高實時性、高并發(fā)性和高數(shù)據(jù)一致性的處理要求。而且由于自身JVM的垃圾收集機制對服務(wù)器內(nèi)核的性能要求很高,處理這部分?jǐn)?shù)據(jù)會占用一定的資源。游戲的實時性意味著大量的數(shù)據(jù)會被頻繁的改變和替換。

不是說JAVA不行,而是對開發(fā)者的能力要求很高!如果能充分利用JAVA的并發(fā)優(yōu)勢,是可以做到的,而且已經(jīng)被一些小公司作為網(wǎng)游服務(wù)器的開發(fā)語言。

PC端和移動端單機游戲再也不用考慮JAVA了。顯然JAVA的2D3D處理效果還不如一些主流游戲開發(fā)語言!語言有它的使用場景,所以要利用它的優(yōu)點,而不是拿它的缺點和其他語言的優(yōu)點做比較!現(xiàn)在JAVA是服務(wù)器端開發(fā)的最佳選擇,因為它的帝國大廈很完善,開發(fā)者也很多!

為什么Java不適合游戲開發(fā)?

因為java里多了一個jvm,所以效率低,游戲的實時性很重要。

看一門語言適合開發(fā)什么,主要有三點。

1.效率問題,包括開發(fā)效率和執(zhí)行效率。

2.生態(tài)圈。有些人提供了很好的完整解決方案,為什么不用呢?

3.產(chǎn)品的焦點。

以java和C為例,java主要用于web開發(fā),但C也可以通過cgi寫web,C的執(zhí)行效率比java落后幾個街區(qū)。但是為什么不用C寫web呢?因為C開發(fā)web的效率太低,而java有各種針對web的框架,所以開發(fā)效率高。

如果產(chǎn)品是游戲,游戲的實時性很重要,玩一個反應(yīng)慢的游戲一定很煩。這個游戲產(chǎn)品的實時性注定了要采用高效的語言開發(fā),所以c,c自然跑不掉。

2-@qq.com

為什么Java不適合游戲開發(fā)?

畢竟游戲是有分類的,游戲分客戶端和服務(wù)器。

很多游戲服務(wù)器都是Java。

而且實時性要求不高的游戲客戶端也可以用Java開發(fā),比如《我的世界》。

我想題主是想問為什么3A大作不用Java開發(fā)?

其實就是一個路徑綁定問題。目前大部分大作都是用游戲引擎制作的,而這些游戲引擎已經(jīng)開發(fā)了很多年。如果是用Java做的,可能要用一些沒有經(jīng)過業(yè)界驗證的新東西。大公司不想冒險。況且Java的垃圾收集機制本身就是一個難點,不太適合實時游戲。

0-@qq.com

開發(fā)java游戲的性能和效率差,開發(fā)一些小游戲還可以。java是面向?qū)ο蟮模蟹椒ǘ挤庋b在類中。要調(diào)用方法,就得實例化類,游戲主要看邏輯。

物體就像機器,有很多功能,但我的游戲邏輯只需要每臺機器的一個功能,但要使用它,必須把整臺機器做出來。這就是面向?qū)ο蟮娜毕荨?/p>

c是面向過程的,所以可以更靈活地設(shè)計過程邏輯,省去了很多冗余的東西,性能也大大提高。

java的優(yōu)勢在于利用現(xiàn)有的各種類包達(dá)到復(fù)用的效果,大大提高開發(fā)效率。

當(dāng)然,java可以只為邏輯設(shè)計類,但那不是java的強項,沒有太大意義。

百度搜索圈T社區(qū)()免費視頻教程

為什么Java不適合游戲開發(fā)?

要我說,java適合開發(fā)游戲嗎?我相信答案是恰當(dāng)?shù)?。java開發(fā)效率高,運行效率一般。需要運行效率的地方用C或者cxx寫就好了。市場上的大多數(shù)游戲都不是用單一的編程語言開發(fā)的,所以沒必要和語言糾結(jié)太久。

很多人說運行效率也很重要,但其實一般邏輯你是感受不到區(qū)別的。一般邏輯用java或者c#,或者腳本語言等開發(fā)效率。一門調(diào)試效率高的語言會讓你的開發(fā)更加得心應(yīng)手。尤其是腳本語言。

和cccxx只在特別需要效率的地方使用。