C++真的能够王者归来吗?
2012-02-13 10:02
302 查看
From: http://blog.csdn.net/adwu73/article/details/7230048
C++真的能够王者归来吗?
@吴穹Adam
我个人认为不太可能!因为不能光看C++改进了什么,有什么优点?而要看环境,看对手!
这篇博客不想写太长,提出一些点供大家参考:
1.中间件的力量:在现在的江湖里面,语言已经唱独角戏了,而是必须有中间件的配合。中间件这里是一个泛化的概念,包括VM,Web、App Server等等。Java,C#,Ruby等等都有丰富的中间件支持。其实这里语言和中间件实现了一个很好的关注点分离,语言注重抽象和编程效率,而中间件去关注运行效率,而C++基本上在唱独角戏,一人包打天下。因此,下面这张比较图其实是不全面的比较,是一种误导!
2.动态语言的崛起:动态语言是新时代的平衡,CPU运算能力运行能力越来越强,原来需要在编译时必须做出的决定,现在可以用解释的方式推后到运行时决定了,进一步带来编程的灵活性和效率的提升,我觉得动态语言会是未来的趋势(有关这个话题,内容很多,我也还在更深入地思考,未来再专文展开吧);
3.业界的现状:在我咨询的客户里面,C++的市场份额其实很小。电信设备其实大多数还在用C,人家还嫌C++慢呢!企业IT市场主要是Java和C#的天下,只有一些像百度这样的搜索引擎在用C++,以及一些手机软件开发商。从爱立信的姿态来看,更多在推行Java,而企业IT回归C++,简直是天方夜谭,至于移动开发,我觉得这是一个变化最迅速的领域,这个领域的硬件变化速度以及软件形态变化的速度都会非常快,因此,未来还很难说,我个人的片段是手机和PC会慢慢融合,APP的问题会慢慢暴露,最终还是回到B/S形态。
综上所述,诚然C++还是还在某些专业领域里面发挥它的价值,但我觉得C++回不来,即便他是曾经的王者。因此,我同样赖勇浩的判断,如果你还不精通C++,它绝不应该是你2012学习的重点,根据你所在的行业的不同该学的东西多了,学一门动态语言,学学REST,OSGi,学学HTML5, CSS3,学学backbone.js,node.js,学学持续交付,学学自动化测试工具!
一个时代有一个时代的东西,大家需要与时俱进!!!
补注:
各位C语言的爱好者,这里说的是C++,C语言是嵌入式领域的王者;
各位C++的爱好者,我不是说C++不好,只是说C++不会再大热了,有时间也不应该技术储备C++(除非你的工作马上要用)!
C++真的能够王者归来吗?
@吴穹Adam
我个人认为不太可能!因为不能光看C++改进了什么,有什么优点?而要看环境,看对手!
这篇博客不想写太长,提出一些点供大家参考:
1.中间件的力量:在现在的江湖里面,语言已经唱独角戏了,而是必须有中间件的配合。中间件这里是一个泛化的概念,包括VM,Web、App Server等等。Java,C#,Ruby等等都有丰富的中间件支持。其实这里语言和中间件实现了一个很好的关注点分离,语言注重抽象和编程效率,而中间件去关注运行效率,而C++基本上在唱独角戏,一人包打天下。因此,下面这张比较图其实是不全面的比较,是一种误导!
2.动态语言的崛起:动态语言是新时代的平衡,CPU运算能力运行能力越来越强,原来需要在编译时必须做出的决定,现在可以用解释的方式推后到运行时决定了,进一步带来编程的灵活性和效率的提升,我觉得动态语言会是未来的趋势(有关这个话题,内容很多,我也还在更深入地思考,未来再专文展开吧);
3.业界的现状:在我咨询的客户里面,C++的市场份额其实很小。电信设备其实大多数还在用C,人家还嫌C++慢呢!企业IT市场主要是Java和C#的天下,只有一些像百度这样的搜索引擎在用C++,以及一些手机软件开发商。从爱立信的姿态来看,更多在推行Java,而企业IT回归C++,简直是天方夜谭,至于移动开发,我觉得这是一个变化最迅速的领域,这个领域的硬件变化速度以及软件形态变化的速度都会非常快,因此,未来还很难说,我个人的片段是手机和PC会慢慢融合,APP的问题会慢慢暴露,最终还是回到B/S形态。
综上所述,诚然C++还是还在某些专业领域里面发挥它的价值,但我觉得C++回不来,即便他是曾经的王者。因此,我同样赖勇浩的判断,如果你还不精通C++,它绝不应该是你2012学习的重点,根据你所在的行业的不同该学的东西多了,学一门动态语言,学学REST,OSGi,学学HTML5, CSS3,学学backbone.js,node.js,学学持续交付,学学自动化测试工具!
一个时代有一个时代的东西,大家需要与时俱进!!!
补注:
各位C语言的爱好者,这里说的是C++,C语言是嵌入式领域的王者;
各位C++的爱好者,我不是说C++不好,只是说C++不会再大热了,有时间也不应该技术储备C++(除非你的工作马上要用)!
相关文章推荐
- C++真的能够王者归来吗?
- 技术高手热议:Why C++?王者归来(转)
- Lex和Yacc从入门到精通(4)-能够使用C++的Lex和Yacc框架
- 如果能够让出资人了解更多的c++项目进程
- Why C++? 王者归来
- C++第六周任务4设计一个三角形类,能够输入三角形的三个顶点,求出其面积、周长,并判断其是否为直角三角形和等腰三角形。
- Cpp2Uml是一个能够为C++项目生成UML模型文件的Eclipse插件
- C++ 让程序能够访问名称空间std的方法 以及 main函数头详解
- c++中的new是否能够开辟连续的空间?
- 陈皓:Why C++? 王者归来(2)
- 怎样编写能够被C调用的C++函数
- C++ windows多线程 线程描述了进程内代码的执行路径。进程中同时可以有多个线程在执行,为了使他们能够同时运行,操作系统为每个线程轮流分配CPU时间片,为了充分地利用CPU提高软件产品的性能,一
- 能够使用C++的Lex和Yacc框架
- Visual Studio2010的发布,C++的高手王者归来
- C++的文艺复兴: Why C++? 王者归来
- 如何使GCC能够处理双斜线注释(C++风格注释)?
- C++友元friend --c++利用friend修饰符,可以让一些你设定的函数能够对这些保护数据进行操作
- 酷壳网陈皓:Why C++?王者归来
- c++ 能够记录状态的vector
- C++的文艺复兴: Why C++? 王者归来