大家好,今天小编关注到一个比较有意思的话题,就是关于java多语言编程的问题,于是小编就整理了3个相关介绍j***a多语言编程的解答,让我们一起看看吧。

  1. iwanna游戏是用啥编程语言写的?
  2. 有人说腾讯使用C++为主要开发语言?java少?为什么?
  3. 现在是JAVA工程师,还想学一种编程语言,学什么好?

iwanna游戏是用啥编程语言写的?

iwanna游戏是由Game Maker 8.0汉化破解版和I wanna be the Nikaple Edition v1.43 (dacat mixed)引擎制作的,所用编程语言是GML(game maker language)。

java多语言编程-java 多语言
(图片来源网络,侵删)

有人说腾讯使用C++为主要开发语言?j***a少?为什么?

我负责过QQ秀和Qzone的运维,也在QQ秀做过开发,当时我所在的部门,如果用j***a作为开发语言的话以当时服务器的数量是不足以支撑数亿用户的服务的。

要知道,与淘宝不同,腾讯许多业务是***的,例如qzone的许多功能都可以***包括心情,日志,相册,服务器要承担这些亿级的有大量高密集的碎片化请求,如果用j***a来支撑,经济上是不划算是一方面,响应速度方面用户体验也非常不好。

java多语言编程-java 多语言
(图片来源网络,侵删)

再来看淘宝,与qzone发个心情,日志相比淘宝用户在淘宝上的行为最终要触发商品交易的,说通俗点就是淘宝用户的行为大都是跟钱相关,而且淘宝要不断迭代更新的同时确保程序逻辑的严谨,J***a综合来说是个非常好的选择。

对于高效处理这些高密集的用户请求,c是一个非常好方案,非常适合腾讯的用户场景;淘宝也不是不用c,像淘宝的图片服务器,也是属于海量的高密集用户请求服务,淘宝在这里使用淘宝技术团队修改过的nginx,我们都知道nginx就是c开发的,类似的场景在淘宝的服务架构里应该还有很多这样的例子,阿里也雇佣了不少c的工程师,Linux内核工程师。

java多语言编程-java 多语言
(图片来源网络,侵删)

关于这个问题要你要从腾讯发家开始看。

腾讯最开始是以做通讯软件开始发家的,也就是qq.因为qq主要涉及到的就是网络通讯这一块,再加上当时主要就是用在PC端,从程序的运行效率考虑C++无疑都是最好的选择。包括后面腾讯的一系列产品qq音乐,qq管家,qq游戏等等基本上都是基于C++开发的。据我所知他们的服务端应该也是用C++写的。


我所见到的一部分原因是,腾讯内部的各类c++组件已经非常丰富并且稳定了,这种情况下若非特殊原因,实在没理由花力气和冒风险去切其他性能还不如c++的语言,我c/c++,j***a,python,lua都写过,对语言并无偏执。我接触到的一个基础模块,日请求量200亿+,服务器数目却不足百台,其他语言是很难做到的。所以,新模块开发依然首选c++,但内部也一直鼓励新技术,前提是有正当理由。很多时候我们只是了解到一点皮毛,然后就根据这点皮毛去揣测不熟知的领域,这里不单指计算机语言,这种习惯是很危险的,共勉。

现在是J***A工程师,还想学一种编程语言,学什么好?

同是j***aer,现在已经转向了go.

目前j***a的现状

我们大多数的j***aer使用j***a都是在开发一些后台系统居多。

GO与J***A的对比

两者都有内存管理GC.

两者都是跨平台.且J***A的跨平台是依赖于自身的JRE运行环境。GO可以编译出对应系统环境的应用程序.

GO是一门编译型语言,J***A是编译型同时也是解释型语言,何时提前做编译是由JVM决定。由于语言的特性,J***A性能上是稍逊于GO的。而且GO拥有协程(用户级别的线程)的概念,比J***A的线程(系统级别的线程)要好用的多,对于CPU上下文切换性能好太多.

个人想法

GO在性能上比J***A优秀,且协程的概念可以更好的释放服务器的多核计算能力。后面我觉得,J***A在服务器这端的一部分应用,会被GO取代。如:大多数我们j***aer都会有自己的一台云服务器,可以看到的是阿里云为每台云服务器默认安装的监控服务已经由J***A版本切换到了GO版本的程序.再如B站也是大规模的使用GO开发了。

最后

如果题主暂不考虑做其他领域的应用,而且想要比较平滑的学习另一门语言的话,我觉得GO是很合适的。

到此,以上就是小编对于j***a多语言编程的问题就介绍到这了,希望介绍关于j***a多语言编程的3点解答对大家有用。