本文作者:plkng

java语言的缺点 java语言的缺点优点

plkng 5分钟前 2
java语言的缺点 java语言的缺点优点摘要: 大家好,今天小编关注到一个比较有意思的话题,就是关于java语言的缺点的问题,于是小编就整理了1个相关介绍java语言的缺点的解答,让我们一起看看吧。为什么Java不适合游戏开发?...

大家好,今天小编关注到一个比较意思的话题,就是关于java语言的缺点的问题,于是小编就整理了1个相关介绍Java语言的缺点的解答,让我们一起看看吧。

java语言的缺点 java语言的缺点优点
图片来源网络,侵删)
  1. 为什么Java不适合游戏开发?

什么Java不适合游戏开发

如果你问我java适合开发游戏吗?我回答肯定是适合的,java开发效率高,运行效率一般需要运行效率的地方用c或者cxx写就好了,现在市面大多数游戏都不是单一编程语言开发的,不需要在语言方面纠结太久。

很多人说,运行效率也很重要,但实际上,一般逻辑,你是感受不出差异的,普通逻辑使用java或者c#,或者脚本语言等这种开发效率,调试效率高的语言会让你开发更舒服。特别是脚本语言。

c和cxx只在特别需要效率的地方才使用。

java开发游戏性能和效率差,开发一些小游戏可以,java面向对象,所有方法都是封装在类里的,要调用方法就得实例类,而游戏主要侧重的是逻辑

java语言的缺点 java语言的缺点优点
(图片来源网络,侵删)

对象就像是很多功能机器,但是我的游戏逻辑只要每台机器的其中一个功能,但要用的话必须把这一整台机器制造出来。这就是面向对象的缺陷吧

而c是面向过程的可以更加灵活地设计过程逻辑,少去很多多余东西,大大提高性能

java的长处就是利用各种现存的类包,达到复用的效果,大大提高开发效率,

当然java也可以只针对逻辑来设计类,但那不是java的长处,没有多大的意义

java语言的缺点 java语言的缺点优点
(图片来源网络,侵删)

百度搜索圈T社区(www.aiquanti.com) 免费视频教程

作为一个多年游戏服务端开发者,我来回答一下这个问题。只要你仔细去招聘网站看,会发现游戏招java的非常少(我希望杠精不要抬杠,我说的少,而且非常少,并不是说没有)。那么为什么在其他领域的霸主在游戏行业连喝口汤的资格都没有呢?其实主要有两个原因,而且这两个原因都和程序员最关心的效率有关系,一个是开发效率,一个是运行效率。很遗憾的作为一个不上不下的java两个都占不了。

首先是开发效率,在几年前手机游戏开始火爆,游戏公司多,产品相似度高,那么如何能以最快的速度开发完游戏并且上线运营,在快速迭代中试错,降低开发周期就是减少开发成本。在这种环境下,很多脚本语言成了首选,比如nodejs、php甚至还有lua和python(这里多说一句,别看lua语言本身简单,其实lua在游戏领域的使用成本是非常高的,至少在这四种脚本语言中是最高的,因为他只是一个胶水语言,要依附于c/c++,作为游戏周边的库都要自己造轮子或找轮子,同时对于引擎部分来说,对核心开发人员要求也非常高,如果公司没有经验丰富的c/c++程序员,lua基本玩不转)。在这些脚本语言面前,java毫无优势。nodejs开箱即用,用js可以前后端一起写(html5的流行让这种情况更是越来越多)。而php上手容易,开发简单,而且像一些用http的弱交互游戏,热更新简直不要太爽,无感知修bug。一些简单的休闲游戏,用这些脚本语言完全可以很快速的完成,就拿之前比较火的刀塔传奇来说,用这些脚本语言一点压力都没有,还有特别是棋牌类游戏,脚本语言更是首选。

其次再来说说运行效率,在一些密集型计算的游戏中,c++是首选,一些大型游戏,对计算要求很高,业务逻辑复杂的情况下,提升效率就能多容纳在线人数,也是成本的减少。同时对内存要求也高,使用c++可以数着内存写代码(手法过于夸张[捂脸]),对象啥时候申请,啥时候释放都是程序员说了算,gc消耗不存在的。而java生成的都是字节码,代码执行都要经过jvm来跑,这中间的消耗对于那些对性能要求苛刻的程序来说,绝对不能接受。

综合以上两点,java处于运行效率和开发效率中间的语言,在游戏这个行业自然是不会受到青睐。

到此,以上就是小编对于java语言的缺点的问题就介绍到这了,希望介绍关于java语言的缺点的1点解答对大家有用。

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享