“一个C++ 程序员的生产力,大概相当于20个C程序员,200个java程序员”,对于这句话你怎么看?



总结

任何语言都有它适用的场景,如嵌入式方向用了Java后确实性能达不到要求,那也无法使用。所以各有所长,只要方向对了,语言对了,就会得到满意的结果。


电视鹏


“一个C++ 程序员的生产力,大概相当于20个C程序员,200个java程序员”

这句话确实说的有点过了,如果这样的话,一个软件公司直接招聘一个C++程序员就可以了,省的招聘200个Java程序员。如果这样算下来,将给公司省下多少钱啊!然后实际上是怎么样的呢?

以我周围的环境为例,反而是Java程序员远多于C++程序员,当然这主要是由于公司的业务决定的,不需要那么多C++程序员,并不能代表C++的生产力比Java程序员高,或Java程序员的生产力比C++高。

如何核定程序员的生产力?

古云说的好“闻道有先后,术业有专攻”,不同的工作、不同的业务,跨场景比较没有意义。一个程序员的生产力如何核定,我认为就从对应的专业上来核定,是否足够专业。你拿一个初级的C++程序员跟一个资深的Java程序员相比,你说谁的生产力大。


程序员的生产力比的就是专业性。


Andoter的学习笔记


这个说的也没什么错。c已经半抛弃了,没什么库,干什么都得从头来,效率肯定低下。cpp基本就是大公司的选择,比如Google。这就给cpp很大优势,因为大公司会贡献高质量开源项目。Java不错,但是上规模就不成了,小公司用一下会敏捷一点,一旦做大就是招cpp工程师重写,比如Facebook就是把PHP和Java大量用cpp重写。

小公司用Java也是Java工程师比较便宜点,这里并非歧视,行里都知道。cpp需要更多体系结构的背景,学cs的很有优势,写的真的好的话不容易,Java需要的很少,更多的是面向对象和对各种包的了解。

另外个人认为语言之争太低幼了。想要在这行混的好,应该看高点。学更宏观和更微观的东西,代码,只不过是将思想述说出了而已,用法语能写茶花女用汉语能写红楼梦,并不是语言本身的区别。


渔伯oO


本人八年Java经验,五年C++经验,我的感受是:各有优劣,写算法,要运行快点c/c++更适合,它允许你自己进行内存管理,但是容易出错,开发效率比较低,这也是为啥微软内部开发应用主要用c#,因为这样开发才快,当然追求性能弄的Windows得用c++. 而java开发效率高,虽然性能低一点,但是很多来源可用的东西,所以两者各有千秋。最后语言只是工具...更重要的是对一个领域技术专


冰雨飘摇


夸大其词……

念书时曾有位打过交道的博士师兄说过一句话,写的代码跑不起来的是笨蛋,写的代码只能跑起来的是混蛋。今天,无论惯用哪一种编程语言,也不管眼下职务薪酬高低、名气大小,能脱离混蛋范畴的其实没有几个……

C++学会基本语法对没蠢到家的人来说不算难,但想不当个混蛋,只怕比其它高级语言还要困难很多。所以,大多数C++程序员,只是制造垃圾、拖累公司和继任者或大或小的混蛋罢了。如果这番话伤害了某些喜欢C++的小朋友,权当爱之深责之切,与君共勉吧。


晴月浩新雪


cpp的难度在于语言本身,而java的难度在于大平台的架构,java就是为开发大型平台而生的,一个java工程师除了会使用语言本身外,还需要学习各种中间件,各种开源项目,设计模式,分布式,高并发,以及各种云架构,比如要开发一个云平台,普通工程师需要掌握j2ee,消息队列,缓存,负载均衡,web,jpa,微服务,maven,git,junit,docker等等,如果平台需要对接物联网,直播等业务,为了保持语言的统一,那么还需要用java实现百万级socket并发连接,实现高效的视频转码等工作,所以要作为一名java高级工程师并不轻松。


gjajgkjmdchuxm


这个在现实中我是没有发现。

我是一家互联网公司的产品,做了有几年了。接触到的互联网人也比较多。简单分析下这个问题。

从生产力上讲,这个问题的命题是不对的。首先,在一个公司产品开发上,需要的是协同工作,并不是依靠个人能力来完成的,正如打篮球,只有姚明的赛场,没有队友,你想想怎么能够带领火箭。其次,一门开发语言,不存在特别的好或者特别的不好。原因在于,语言是用来服务产品开发的,只要开发人员用的顺手都是可以的(ps:前提是看公司注重哪些语言或者需要哪些语言的开发人员)。

从语言本身来讲,大家普遍认为C++ 比java好,Java比PHP要好,XXX比XXX要好。其实,要看公司的发展,中小公司使用PHP是足够的,有没有庞大的数据需要考虑太多的问题。再者,即便是淘宝、京东也不是只应用Java或者PHP,往往都是多种语言相互结合的。

所以,这个问题是不对的。太片面。


医疗pm产品汪


生产力高不高,不是由语言决定的,而是由程序员的水平决定的,理论上说任何任务用任一一个编程语言都能实现,只是实现的方便程度有差别而已。