读书笔记1:《C++沉思录》

来源:互联网 发布:卡盟网络 编辑:程序博客网 时间:2024/04/29 13:56

    因为最近做图形学方面的研究,要用C++。大一时的C++课学得一知半解,所以写程序时经常碰壁,于是就想仔细学一下这门语言。去图书馆逛的时候发现了这本书,非常开心,便想拜读一番。

    今天读完了第一篇——动机。这篇中,作者根据自身的经历,讲述了为什么选择C++。他并没有讲过多的专业知识,而是提出了几个观点。我认为比较有趣的有两个:

    第一,作者认为好的项目一般都始于小项目的成功,然后才逐步成长为优秀的软件。在本篇中,作者对“软件工厂”提出了质疑,他认为这其中所谓的“管理”,实质上并未对提高开发效率起到多少积极作用。软件工厂忽视了编程和生产的本质区别:工厂制造大量相同的产品,讲究规模效益;而软件开发主要生产数目相对较少、彼此不同的人造产品,如果这些产品太相似,开发工作就变成了机械的、重复的事情,这完全可以用程序完成。作者认为,不如将软件开发的理想环境比作修理厂——在那里,熟练地技术工人可以利用手边的工具来提高效率。

    第二,作者由豪华轿车和用Lisp升级图书流动报表的例子提出:我们不可能为特定的工具挑选问题。我们的思维应该是由问题出发的。而当时的具体问题就是操作系统多种多样,大多数的编程语言都和编程环境相耦合。这就显现出C++抽象、可移植、易扩展的优点了。

    我觉得作者提出的上述两个观点非常重要。上世纪九十年代提出的的极限编程的思想,就有一种回到编程本质的味道。作者于1996年底编写此书,可见其观点十分前卫。之于他提出的第二个观点,也是我一直执着坚持的。在不久前,我进行研究选题时,就与老师讨论过这个问题。我认为研究应当从实际问题出发,老师给我补充了几点:第一,这个问题并不一定是实际的,也可以是抽象的,黎曼在研究积分时并没有想到会对相对论产生铺平道路;第二,关键是研究者要对所研究的问题有浓厚的兴趣。总结起来就是:研究应当从感兴趣的问题出发。

    推荐大家也读一读《C++沉思录》。

1 0
原创粉丝点击