腾讯为何还在用C语言开发?!

1、是由于C++服务端相比JAVA有某些优点吗?java

答:不是,但任何一个公司都是有技术积累的。相比于java,腾讯在C++方面的积累更多,这固然是历史缘由。若是你算搞一个新项目,在腾讯你能够有大量C++的开源组件能够使用,这些组件都是有专人维护并且绝大多数是通过生产环境考验的。现成可用的东西,为何不用呢?程序员


2、若是说是由于腾讯里会C++的员工比较多web

(1)又常常看到有人说编程语言只是工具,精通一个其余的很容易上手?引伸如下一个长久的疑问:算法

(1.1)熟悉JVM,java并发编程,java开源框架的人转C++依然很快能达到至关水平?熟 悉C++的转java也很快能熟悉这些吗?编程

答:我见过熟悉C++转Java很容易,可是反过来却不必定,从语言自己C++仍是要比Java难不少的。而事实上做为一个专精于某领域的程序员,从熟悉的语言转到其余语言也并不是易事。不是由于语法自己,而是由于转到其余语言就要熟悉新的开发环境、工具链、各类组件等等。不管是时间成本仍是风险都很高。微信


(2)为何不招JAVA的程序员开发呢?架构

答:若是你是精通C++的JAVA程序员,会招的。并发


虽然腾讯后台常常要面对各类高并发大数据的场景,很关注高性能低成本高可用,但这是在架构层面解决的,业务开发其实并不须要考虑太多,根据场景选用合适的架构和组件便可。app

以我这几年观察,大部分业务代码写得都是一团糟。性能、可扩展性、健壮性非但比不过我写的C++,也不比过我写的java。框架


甚至我敢说用js均可以写得比它快。太多低效算法,二重循环求vector交集你能忍?还有太多的内存拷贝,中转层服务对象拷贝五六次太常见了;至于常常crash,毫无扩展性,这更不用说了。


C++理论上能够写出性能很好的代码,可是你需求那么紧迫,开发时间不足,单元测试都没时间搞,哪里还有时间去优化代码?况且你们水平也不高,毕竟招了上万人,哪里能都"精通"C++?虽然C++开发效率低(现用gcc 4.1.2),又容易出bug,但你们都在用,你固然也只能继续用。你换一个语言,配套的工具链,编译发布运维,各类对内对外接口,都要从新开发,成本实在太大了。

就算是新项目,成本也太大了,项目失败谁负责得起?


C语言错误拍照记录


热点文章

国内IT界最火的5名女神程序员?!

华为21级程序员月薪曝光:270k 可封神!

程序员都用什么牌子电脑编程?!

C语言游戏外挂:一个简单的内存外挂

你永远不知道程序员无聊的时候会作什么

我写了一段代码,为何不能运行呢?


转发朋友圈,点下“在看”就是对小编的最大支持!

本文分享自微信公众号 - C语言入门到精通(c_printf)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索