JAVA能写大型游戏么?「建议收藏」

2022-09-01 11:05:48 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

JAVA能写大型游戏么? 答:不能 ,所谓的大型游戏一般都是指端游。必须是C 这没办法C 和java的效率还是有很大差距的。

java什么东西基本都能开发,只是java致命的是不能直接操作内存,只能安装虚拟机,这样使java在开发的时候造成很多局限性.但是java提供了本地方法,可以调用c的类库。使得功能进一步提升。又由于java对于垃圾回收机制是自动的,使得游戏在流畅性上有很大的折扣。所以java不适合开发大型游戏(除非自己实现垃圾回收等一些机制),使java能与c相比使。又因为java的初衷就不在界面和桌面游戏上。而在企业开发。因此java不适合开发大型游戏。中小型网络游戏还行。

在游戏业Java可以搞什么?那就是页游和手游的服务端了,页游的前端都是Flash,手游的前端是coco2dx(C ),unity3D(C#或JS) 你可以看看 37游戏 墨麟集团 上海易娱 明朝网络 动网先锋 掌趣科技 等等游戏公司他们都找Java游戏服务端的

在性能方面java拿来做页游手游的服务端是无压力的。 为什么不用C ? 因为Java的开发效率比C 的要高,敏捷,游戏开发都是在抢时间的,c 的要求门槛高 ,而且经验少的代码质量差,服务器很容易挂掉,另外一个是Java的人也比较好找,写的代码不要太烂,一般服务不会有什么问题的。

页游手游现在用c 比较多的另外一个原因:历史 为什么? 好像在jdk 4.0之前是没有NIO的,所以游戏服务端的天下都是c /c,后来java出了NIO后,慢慢出现NIO的框架 如netty mina等等优秀的框架,慢慢就出现用java来做服务端了。 NIO是什么,自己百度吧。 光电探测器 NIO的包,有一些新特性,就是异步非阻塞通讯。大大提高了服务端的性能。 你们现在所用的Tomcat,其实是伪异步阻塞式通讯,就是一个线程池在接受发送,一个线程必须等客户端接受完毕才解除阻塞,底层还是同步阻塞的。

现在很多页游手游的服务端都用Java了,起码在广州已经是很成熟的。 搞C 的不愿转Java,这就是为什么服务端都是c 的天下了,java起码在页游手游服务端毫无疑问的,也有很多成功的产品。

假如楼主你想搞端游,提醒一下,搞端游的公司门槛很高的,而且数量极少,现在剩下的端游公司真心不多了,都是些巨头,你打算搞端游的话,第一个你达不达到那种高水平? 第二,公司太少了,风险很大。光电探测器

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140680.html原文链接:https://javaforall.cn

0 人点赞