卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

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

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

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

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

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

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

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

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

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

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

0-@qq.com

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

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

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

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

因?yàn)閖ava里多了一個(gè)jvm,所以效率低,游戲的實(shí)時(shí)性很重要。

看一門(mén)語(yǔ)言適合開(kāi)發(fā)什么,主要有三點(diǎn)。

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

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

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

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

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

2-@qq.com

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

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

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

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

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

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

0-@qq.com

開(kāi)發(fā)java游戲的性能和效率差,開(kāi)發(fā)一些小游戲還可以。java是面向?qū)ο蟮?,所有方法都封裝在類(lèi)中。要調(diào)用方法,就得實(shí)例化類(lèi),游戲主要看邏輯。

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

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

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

當(dāng)然,java可以只為邏輯設(shè)計(jì)類(lèi),但那不是java的強(qiáng)項(xiàng),沒(méi)有太大意義。

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

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

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

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

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