为什么在招聘网站上看到招聘JAVA的很多,而C语言和C++相对很少?

admin 98 0

为什么在招聘网站上看到招聘JAVA的很多,而C语言和C++相对很少?

因为需求决定了。互联网用c的很少,基本只有传统的IT CT厂商和硬件结合的项目用c。

c++以前比较牛逼,但是由于坑太多,现在新项目用c++的也变少了。c++依赖太多,太恶心了,因为c++不属于任何一个公司,而且标准委员会只指定标准,不实现标准,而且c++没有实际意义上的二进制abi规范,所以换一个编译器,升级一个编译器版本,不用编译器编出来的动态库混用,甚至换一个STL实现,都会出现不兼容的问题。而且现在c++标准98/03/11/14/17/20这么多标准,实现多少完全看编译器,而由于不属于任何一个公司,编译器也分好多种。各种不兼容,导致一个在g++4.5版本下跑的好好的历史遗留项目,用的03标准。想开一个c++11跑跑,结果n堆编译错误。在老标准可以用的写法,新标准禁止了。新标准的c++其实很好用了,但是由于各种历史原因导致的,坑实在太多,技术水平一般的公司不容易hold住,而且随着硬件水平提升性能优势也不是很明显了,而且其实性能主要看写代码的人。

java属于一个公司,标准制订,编译器的制作要一致的多。而且升级版本不会有像c++那么多问题。现代c++非常好用,但是由于c++的项目大多都是历史项目,所以升级不了编译器,还得继续用十几年前的c++写代码,所以就显得c++很难用了,这怎么和现代的java比。

还有一个重要原因是生态,java可以用的库,太多了,而且有强大的包管理。而c++还是用的非常土的和c语言一样的头文件编译展开的方式。用第三方的库,都要用源代码自己编译,编译器等级高了不行,低了也不行,用了不同版本的STL还可能连接错误,就一个简单的引用第三方库就玩死一票人。

这里不谈语法表达性这种区别,大部分公司就是想快速做出项目来,容易上手,拿来就用的东西多,这才是重要的。所以某些语言就慢慢用的少了,但是在某些领域是不可替代的,所以在出现同类型语言前,并不会被淘汰。

标签: #招聘网站 #JAVA #很多 #C语言 #C++ #很少