笔者不从语言优劣,但从市场角度思考了一下这两种语言的未来
it业下一轮热潮已经很明显了,移动互联网。
这个浪潮中涉及终端技术,服务端技术。
那么未来软件开发的走向会是什么呢?
无论是终端,还是服务端,毫无疑问,java已经具有了绝对优势
并且已经实际地占用了移动互联网技术的制高点。
无论是软件基础部件,还是高端开发人员,均无c/c++阵营介入的余地
先看终端,不同于pc时代的wintel联盟。
移动互联网的终端厂商目前还看不出哪家能独大。
也就是无论硬件,还是操作系统,都不能确定一个标准。
在这种不明朗的情况下,应用开发商明临的一个很现实的问题,
如果选择开发语言?
显然,任何一个cto在终端技术选形的时候,必然是毫不犹豫地选择java。
没有哪家公司愿意为了那么一丁点儿的性能,而放弃java强大的跨平台能力。
即使等于终端平台出现了相对的统一,也会因为应用开发市场已经被java占领。
更重要的是研发阵营已经被java占领,各个应用开发公司的高级cto们均是java阵营,
权力将会导到c/c++阵营被排除在外
服务端面临的问题是同样的,而且服务端在某种程度上来说,java称霸已成定局。
java阵营长期处理互联网海量数据业务,早已发展了成熟的高扩展,高并发解决方案组件
如hadoop。
同样,java服务端开发人员阵营已经占领了各大公司业务开发的制高点,形成了权力金字塔。
c/c++阵营无论是从权力,还是组件的成熟度,均已很难挑战java阵营。
而互联网业务,显然是扩展性要求,高于性能要求,这让c++引以为毫的性能优势也荡然无存。
所以移动互联网c/c++阵营出局,基本已成定论。
可以想像,在下一轮it技术的浪潮,c/c++的岗位将越来越少。
做为c/c++的忠实粉丝,笔者不否认全世界90%的有效代码是c/c++来完成的。
但最终c++/c会成为开发浏览器,底层虚拟机等的利器,
以及一些性能敏感特定应用行业(图形语音等)
在普通应用层c/c++可能将退了历史舞台。
汇编语言一样,依然重要,但相应的岗位需求会日益萎缩。
在未来看待c/c++,就如同今天看待汇编一样。