您的位置:首页 > 编程语言 > C语言/C++

"The Design and Evolution of C++" 阅读笔记

2010-12-27 11:24 1071 查看
周末无事, 想找本有意思的书看, 想起这本, 于是躺在床上翻了起来.

这类讲历史的书, 一向都比较有意思, 尤其是这种当事人亲自来讲述的, 一来可以了解很多东西的来龙去脉, 二来么, 八卦也比较多.

Bjarne 是个很会写文章的人, 大道理一通一通(非贬义 ;), 之前看他的 "TCPL" 就有这感觉. 看过这本自述史兼介绍 C++ 设计过程的书后才知道, 原来是位民间哲学爱好者.

C++ 现在挺不受人待见, 好像是个人都可以指责一番, 我也人微言轻的说过几句"只当带类的 C 用" 如此等等.

事实上来说, C++ 的发展颇为艰难.

在一个连虚函数都要加以反对, 认为函数指针就够用了的 geek 世界, 一个 1m 内存当宝用, runtime, gc 因为性能受尽歧视的年代, 要尽量保证与 C 兼容, 并引入面向对象等新特性, 并不是件容易的事情, 以现在的眼光来做种种挑剔只能说是一种苛责.

在这诸多限制之下, Bjarne 还是漂亮的把新的想法与 C 的传统融合在了一起, 提供了一个强大的工具, 进而改变了世界.

对此, 我们还有什么好说的呢?

平时不去关注不觉得什么, 但回过头来看, 编程语言的发展真是迅速, C 语言 72 年出来, Bjarne 79 年开始设计 C++, 85 年进入工业, 90 年代开始大面积普及, Sun 95 年推出 Java, 微软 2k 年发布 C#, 一波接一波, 几乎是眨眼的功夫, 就到了现在的 C# 4 已出, Java 7 在望的现代世界. 这样的创新频率跟积累的速度, 实在是很惊人.

文中提到一个细节, 比较有意思, 原来到 80 年代, 都还没人能为 C 写出 LALR(1) 的文法. 这可真够让人吃惊, 要知道, 别的不说, 光当时的 Bell 实验室, 就是牛人扎堆的地方, C 语言之父, 龙书作者... (看来编译原理难学, 也不是没有道理 ;)

(由此也可见, 科学跟技术的发展, 不是某个人的一蹴而就, 而是一个逐步积累的过程, 我们现在所学, 都是无数聪明人一步步探索出来的, 不能妄自尊大, 但也没必要妄自菲薄.)

对此, Bjarne 不无抱怨, 说自己本是单纯热血科学好青年, 结果却被几个邪恶腹黑权威中年男误导, 走上了一条错误的道路...

(待续)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐