请问 JAVA C# C++ 这三种编程语言都是擅长开发啥的?都各有啥优缺点?我偏向游戏编程方

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问 JAVA C# C++ 这三种编程语言都是擅长开发啥的?都各有啥优缺点?我偏向游戏编程方相关的知识,希望对你有一定的参考价值。

请问 JAVA C# C++ 这三种编程语言都是擅长开发什么的?都各有什么优缺点?我偏向游戏编程方面 学哪个好?

我觉得游戏引擎才是最重要的吧。
使用的引擎不同,对应的脚本语言也不同。
我打算学unity3d,它的脚本语言就是c#和js

下面是搜索复制过来的几个手机游戏引擎的介绍,语言方面是以c++和java为主

电脑游戏的引擎,你可以自己去搜一下,数量多。
此外,你去各大人才网站搜索相关词,看看各方面人家要求的数据。
1.Cocos2d-x 简介:
  Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台。Cocos2d-x提供的框架外,手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iosandroid,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、Mac和Linux等桌面操作系统,因此,我可以编写的源代码很容易在桌面操作系统中编辑和调试。
  2.OGEngine 简介:
  OGEngine是国际著名开源引擎AndEngine的一个分支,遵循LGPL开源协议使用OpenGL ES进行图形绘制。同时集成了Box2D物理引擎,因此可以实现复杂的物理效果。
  OGEngine主要使用Java语言开发,但在大运算量的耗时功能时,OGEngine使用了C/C++本地代码进行开发。比如物理引擎及音频处理。作为用户,你只需要关注Java端就可以了,它已经把所有的本地代码封装好了。相比于其他android游戏引擎,OGEngine的效率优势十分明显。
  优点:
  OGEngine在AndEngine开源框架下做了以下工作以便开发者更好的学习和使用:
  1、逻辑线程和渲染线程实现线程独立;
  2、编写了UI体系,提供以线性布局,相对布局,绝对布局,帧布局为基础的UI组件;
  3、修改资源加载并提供相应工具,使得加载资源工作量大大减少;
  4、增加动画编辑器,关卡编辑器,UI编辑器进行数据对接,引擎可以跟工具结合使用开发;
  5、编写场景跳转体系,提供方便的场景跳转方法以及数据传输;
  6、对实体相关类重做和分离,给实体操作提供更多方法和更方便复合实体操作;
  7、提供完整的事件系统;
  8、提供完整的开发文档和学习教程。
  缺点:
  官方申明OGEngine支持多运行平台,不过当前发布版本只支持安卓;同时支持安卓和iOS的版本会在后续版本才发布。
  3.Rokon 简介:
  Rokon是一款Android 2D游戏引擎,基于OpenGL ES技术开发,物理引擎为Box2D,因此能够实现一些较为复杂的物理效果,该项目最新版本为 2.0.3 (09/07/10)。
  优点
  开发文档相当之完备,并且项目作者对反馈Bug的修正非常之神速,所以该框架的使用在目前也最为广泛,有人干脆将它称为Cocos2d-iPhone引擎的Android版(业务逻辑和编码风格上也确实很像)。
  4.LGame 简介:
  LGame是一款国人开发的Java游戏引擎,有Android及PC(J2SE)两个开发版本(测试版添加了C#开发版本)。最低运行环境要求为Android 1.1。其底 层绘图器LGrpaphics封装有J2SE以及J2ME提供的全部Graphics API(PC版采用Graphics2D封装,Android版采用Canvas模拟实现),所以能够将J2SE或J2ME开发经验直接套用其中。
  优点
  1、作为支持Java桌面游戏以及网页游戏开发的全功能引擎,LGame无论对画面绘制、精灵碰撞、特效渲染、窗体组件,还是XML操作,文本数据库操作,HTTP操作,日志操作等都提供有完善的内部解决方案,避免了多包配置的繁琐与不便,同时也降低了用户的学习曲线。
  2、出于效率与程序体积两方面考虑,LGame中所有组件皆不依赖Swing,完全采取AWT绘制而成,因此它可以将自身的运行环境压缩到最小,一个压缩后不足4MB的精简JRE,已足够支持它的运行。
  缺点
  1、该引擎除了基本的音效、图形、物理、精灵等常用组件以外,也内置有Ioc、xml、http等常用Java组件的封装,代价是jar体积较为庞大,PC版 已突破1.2MB,Android版有所简化也在500KB左右。
  2、唯一遗憾的是,该项目作者是个极其懒惰的家伙,开发文档从去年说到今年依旧没有提供,只有游戏示例可供下载。
5.Libgdx 简介:
  libGdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成。它基于Apache License, Version 2.0协议,对商业使用和非商业使用均免费。
  缺点
  (1)精灵类等相关组件在使用上不够简化
  (2)而且文档也较为匮乏。
  (3)仅支持2的次方的图片尺寸。
  6.JPCT 简介:
  jPCT是一款基于OpenGL技术开发的3D图形引擎(PC环境为标准OpenGL,Android为OpenGL ES), 以Java语言为基础的,拥有功能强大的Java 3D解决方案。该引擎与LGame(此为2D游戏引擎)相类似,目前拥有PC(J2SE)以及Android两个开发版本。最低运行环境要求为Android 1.5。
参考技术A java是开发手机应用和中小型游戏用的,适合多平台开发。C#和java差不多,只是微软的一个山寨版,只能在windows使用,有一定的优化。C++就是开发电脑大型游戏用的,你要看你编程什么平台的游戏而定了 参考技术B 游戏就java,或者c#。这两种容易掌握,开发起来快。
c++效率更高,但是没那么容易能掌握

以上是关于请问 JAVA C# C++ 这三种编程语言都是擅长开发啥的?都各有啥优缺点?我偏向游戏编程方的主要内容,如果未能解决你的问题,请参考以下文章

关于PHPJAVA.NET这三种技术的区别

C++ java 和 C# 的区别

请问 大话设计模式 这本书讲的是啥编程语言?我学C#和C++能看这本书吗?

牙膏5元,牙刷2元,肥皂3元,100元买这三种恰好花光,请问有多少种可能性

编程语言:C语言/C++/C#三种语言,它们之间分别是什么关系呢?

请问这个Java代码怎么写,输入三个整数,如果三个整数都相等,那么输出“这三个数相等”