前几天在逛技术论坛的时候,看到一篇关于C++历史进程以及对C++将来发展展望的文章《WHY C++ ? 王者归来》,感触比较深,里面提到一些点印象比较深,"性能既是钱",好的性能不能提高效率,提高用户体验,还能节省电(知道为什么安卓手机电用得那么快而且发热了吧,Android的性能确实一般)。

为什么是C++王者归来,文中提到下面三点:

耗电,芯片的耗电量,移动设备的耗电量,家用电脑的耗电量都和钱有关系。
资源,家用电脑和移动设备上的处理器资源有限,因为要让一般消费者买的起。
体验,在更小的设备上会有更好的体验,有更好的体验就可以挣更多的钱。

我们把编程语言的需求总结成四个维度:效率、灵活、抽象、生产率。C语言的优势是前两者,C++的优势是前三者,而近几年比较火的JAVA、PHP、C#、Python等主要是后两者。所以编程语言没有绝对的优劣,没有绝对的十全十美,很难有一种语言把上面四个维度都完美兼容,语言只有合适不是合适。

回到文章中说到的性能及钱,C++之父Bjarne Stroustrup曾经说过一句“C++是可以减轻全球变暖问题”,咋一看感觉不达标,但是结合上面总结的内容发现确实可能。Bjarne Stroustrup还说过一句“效率不仅仅是跑得更快或者运行更大的程序,更是可以使用更少的资源”。这句跟前面减轻全球变暖就对应起来了。

软件开发分为了好几个时代,80年代以前资源不够的情况下(如内存,硬盘都很小),主要把钱投在性能上。这也是以前C\C++为什么是王者地位,随着资源的升级越来越的精力投入到生产率上,但是当资源和程序到一定瓶颈后最终还是要回归到性能问题,这也就是C++经久不衰的原因吧。肯定有人纳闷,C++作为面向对象的高级语言为什么不能想其他高级语言JAVA、PHP那样提高生产率,其实任何事物都有两面性,不是C++不注重开发效率,而是C++核心思想还是在致力于性能和开发效率之间的平衡。

【厚积薄发系列】C++项目总结17—《WHY C++ ? 王者归来》读后感相关推荐

  1. 【花雕动手做】有趣好玩的音乐可视化系列小项目(17)--光导纤维灯

    偶然心血来潮,想要做一个声音可视化的系列专题.这个专题的难度有点高,涉及面也比较广泛,相关的FFT和FHT等算法也相当复杂,不过还是打算从最简单的开始,实际动手做做试验,耐心尝试一下各种方案,逐步积累 ...

  2. 【厚积薄发系列】C++项目总结19—组件化架构思想

    在一个大型的项目中,随着业务不断拓展,开发人员和代码量的不断增加,传统的单体架构会经常遇到以下问题: 1.业务模块划分不够清晰,模块之间高度耦合,修改和新增需求的时候可能会导致牵一发而动全身的雪崩. ...

  3. 【花雕动手做】有趣好玩的音乐可视化系列小项目(19)--通体光纤灯

    偶然心血来潮,想要做一个音乐可视化的系列专题.这个专题的难度有点高,涉及面也比较广泛,相关的FFT和FHT等算法也相当复杂,不过还是打算从最简单的开始,实际动手做做试验,耐心尝试一下各种方案,逐步积累 ...

  4. 深度学习入门系列6项目实战:声纳回声识别

    大家好,我技术人Howzit,这是深度学习入门系列第六篇,欢迎大家一起交流! 深度学习入门系列1:多层感知器概述 深度学习入门系列2:用TensorFlow构建你的第一个神经网络 深度学习入门系列3: ...

  5. C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码

    C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码 1.别看它界面丑,里面的应有应该尽有; 2.麻雀虽小五脏俱全,很适合新手的一个学习项目,绝对推荐 3.本人也是通过这个项目进入运控行业; ...

  6. 【花雕动手做】有趣好玩的音乐可视化系列小项目(18)--LED平面板灯

    偶然心血来潮,想要做一个音乐可视化的系列专题.这个专题的难度有点高,涉及面也比较广泛,相关的FFT和FHT等算法也相当复杂,不过还是打算从最简单的开始,实际动手做做试验,耐心尝试一下各种方案,逐步积累 ...

  7. 【庖丁解牛系列】 项目时间管理之前导图/单代号网络图

    [庖丁解牛系列][项目时间管理]3前导图/单代号网络图 --------------------------------------------------------- [庖丁解牛系列]项目时间管理 ...

  8. 【花雕动手做】有趣好玩的音乐可视化系列小项目(14)---水杯水瓶灯

    偶然心血来潮,想要做一个声音可视化的系列专题.这个专题的难度有点高,涉及面也比较广泛,相关的FFT和FHT等算法也相当复杂,不过还是打算从最简单的开始,实际动手做做试验,耐心尝试一下各种方案,逐步积累 ...

  9. Java精品项目源码前后端分离项目第17期基于遗传算法学校排课系统

    Java精品项目源码前后端分离项目第17期基于遗传算法学校排课系统 大家好,小辰今天给大家介绍一个基于遗传算法学校排课系统,演示视频文章末尾公众号(小辰哥的java)对号查询观看即可 文章目录 Jav ...

  10. java项目第17期-小程序团购+商城源码【毕业设计】

    java项目第17期-小程序团购+代理商城源码 1.产品介绍 java小程序+大后台web商城源码 基于ssm的一款电子商城,系统采用maven的父子结构, 1.后台web商城包含的模块有: 会员管理 ...

最新文章

  1. 后盾网lavarel视频项目---phpstorm 配置ftp, 自动更新同步代码
  2. Java日志框架-Spring中使用Logback(Spring/Spring MVC)
  3. junit No tests found matching Method
  4. 在Azure Container Service创建Kubernetes(k8s)群集运行ASP.NET Core跨平台应用程序
  5. unique离散化用法
  6. Bare HTTP不完全是RESTful
  7. 为什么黑客都用python-为什么如此多的黑客都用python?
  8. 微软要解决癌症问题?
  9. 微软笔试题 《Image Encryption》
  10. Fiddler抓包 - 系统找不到相应的文件FSE.exe,未能找到路径CustomRules.js的一部分,未能加载程序或程序集 “fiddle“ 或它的依赖项
  11. 学习 MySQL 需要知道的 28 个小技巧
  12. 最全的Python教程【合集】| 寻找C站宝藏
  13. Egret EUI Tab + ViewStack
  14. 微信小程序实现关闭功能
  15. 【MATLAB】使用“蒙特卡罗(Monter Carlo)”算法计算不规则图形的面积
  16. mysql运维备份_MySQL运维经验
  17. Javascript中append和appendChild有什么不同?
  18. 【目标检测·yolo系列】YOLOV3目标检测论文笔记(参考 同济子豪兄的解读)
  19. 注册时输入手机号规则
  20. python中的对象是什么意思_python中什么是对象

热门文章

  1. 操作系统虚拟存储器实验---Python实现
  2. 财路网每日原创推送:隐私计算让人工智能更智能
  3. 读书笔记第一篇:知乎高赞回答
  4. 利用python爬取百度翻译内容
  5. [经验分享]破解Word中保护文档密码
  6. 安卓笔记之ViewPager页卡
  7. Halcon 《ML_MLP》网格缺陷检测
  8. 中泰语快速进行在线翻译的方法
  9. 深度学习环境搭建之七_Ubuntu安装微信、QQ、百度网盘
  10. 释放cuda显存及进程