开发人员应该一开始就学习C++吗?

来自InfoQ的文章开发人员应该开始学习C++吗?Should Developers Start Learning C++?,或者说,大学是否应该学习C++? 实际上是总结了“为什么C++并没有王者归来 Why C++ Is Not ‘Back’”的讨论:

John Sonmez 认为有三种理由使用C++:
1.你愿意牺牲抽象象挤墨水一样挤出那么点性能。
2.你直接和硬件打交道,比如你写硬件驱动程序。
3.内存控制和计时绝对重要。实时嵌入式系统中控制机器每一步移动。

Herb Sutter, 严重赞同这篇文章,认为是:a thoughtful hype-free opinion。并加入下列观点:
当服务依赖运行时调试很难,你没有能力去测试整个应用了。

Richard Dunks认为:
我认为C++无助于在学生第一学期介绍编程类和数据结构之类的教学,你花了这么多时间实现,学生们经常忽视的他们正试图复制学习的结构(banq注:在细节中迷失方向)。我很高兴我熟练掌握C++,但我不认为这是值得的代价,它绝对不是一个适合所有语言教学的通用语言。

......

在Herb Sutter 和 John Sonmez’s博客讨论中很多高品质的评论,对于初学者和计算机语言教学都有参考意义。



[该贴被banq于2012-12-07 15:03修改过]

软件的复杂性和C++的复杂性是日益增长的矛盾。