绿林网

《代码阅读》读后感精选

《代码阅读》读后感精选

《代码阅读》是一本由季奥米季斯·斯宾耐立思(Diomidis Spinellis)著作,电子工业出版社出版的平装图书,本书定价:79.00元,页数:402,特精心收集的读后感,希望对大家能有帮助。

《代码阅读》读后感(一):非常不错的一本书

个人觉得这本书是讲授代码阅读的经典之作,很多牛人都推荐阅读的。之前常听网络上的蔡学镛大牛说,程序员提高的两个途径,一个是写代码,一个就是阅读代码了。所以推荐想成为高手的非高手,以及想持续成为高手的朋友都读下这本书

《代码阅读》读后感(二):挂羊头卖狗肉...

前六章都是一些C语言入门,怀疑骗字数...

从第六章开始说的是如何组织一个项目,包括架构、文档等。

直到第十章才开始说代码阅读这件事,然后第十一章全书结束。

表示很无语,挂羊头卖狗肉。。

代码阅读,这方面如果真有不错的书的话,想看的人应该是蛮多的,毕竟对程序员来讲,代码阅读能力确实很重要。

《代码阅读》读后感(三):原来和这本书是一样的 http://book.douban.com/subject/1151672/

原来和这本书是一样的,只是译者不同。

全书只有不多的亮点。附录B的总结可以时常拿出来看看。

每一个章节的话题,都还有很大的空间去探索。

http://book.douban.com/subject/1151672/

《代码阅读》读后感(四):泛泛而谈,不值得阅读

怀着憧憬而来,满载失望而归, 这本书给我带来的收获, 不如侯捷先生的的一篇文章来的多——《源码追踪经验谈》。 这本书里面谈到阅读代码的一点,我认为同样也适用于阅读本书:

不值得阅读,向喜欢阅读代码的朋友推荐下侯捷先生的文章——《源码追踪经验谈》。

《代码阅读》读后感(五):写给初学者的C语言源代码阅读指南

最重要的特点:所有的代码都在现实的开源项目中有其出处。

写给初学者的C语言源代码阅读指导手册。

有标号的部分摘自书中箴言部分。

第一章 导论

1.有选择的阅读代码,要有目标。想学习新的模式、编码风格还是满足某些需求的方法?

2.充分利用调试器、编译器的警告,系统调用跟踪器、数据库结构化查询语言的日志机制、包转储工具和Windows的信息侦查程序,定位bug

3.向系统添加新功能时,首要的任务就是找到实现类似特性的代码,将它作为待实现功能的模板。[不能再正确,一般就是最低限度找到类似的功能代码,然后照搬实现现在所需功能。]

4.阅读代码寻找重构机会时,首先从系统架构开始,然后逐步细化,能够获得最大的效益。

阅读代码的方式和原因:文献,范例,维护,严谨,重用,检查

[作者强调了阅读代码时,要带着目标,不要漫无重点。重构时可以从架构开始细化,重用时可以适度扩大粒度。]

第二章 基本编程元素

1.第一次分析程序时,main是很好的起点。

2.[运行,找到重点,基于猜测修改代码时要有验证猜测的流程,比如断言或测试用例。]

3.养成遇到库元素就去阅读相关文档的习惯,会增强阅读和编写代码的能力。

4.阅读代码时养成添加注释的习惯

第三章 高级C数据类型

1.使用全局或static局部变量的函数大多数情况下不可被重入

[第二章和第三章介绍了C的语法元素,包括控制语句以及高级特性,见目录。]

第四章 C数据结构

[用C语言表示常见数据结构]

第五章 高级控制流程

1.推理递归函数时,应从基准范例测试开始,并且论证每次递归调用如何逐渐接近非递归基准测试范例代码。

2.尾递归调用邓同一个回到函数开始处的循环。

[从目录看出,介绍的高级控制流程有递归,异常机制,并行,信号和非局部跳转宏替换都C语言针对性强]

第六章 应对大型项目

1.通过浏览源代码树来分析一个项目的组织方式。

2.源代码树经常是该应用程序的部署结构的镜像。

3.首次接触大项目,要花时间熟悉目录树结构

4.大型项目的编译过程中的一般声明皆有依赖关系来说明。依赖关系由工具程序转换成具体的编译行为。makefile通常由配置步骤动态生成。

[大项目相关知识,见目录,包括组织,编译,配置,版本控制,测试等]

第七章 编码规范和约定

[良好的开源项目都有其明确规定的风格指南]

第八章 文档

1.[文档很重要]尽可能利用任何文档,一小时代码不如一分钟文档。

2.软件需求说明是阅读和评估代码的基准。

3.系统的设计规格说明是认知代码结构的路线图

4.文档还会包含问题和bug

第九章 架构

1.深度分析一个构建于某种框架上的应用程序时,最好的方式就是对这个框架本身进行学习。

[很重要的一章,拍照存,这章介绍的内容比较系统的补缺了我所不太了解的部分。目录也很重要。]

第十章 代码阅读工具

[正则表达式,标签,grep,fgrep,diff——都不太理解,并且平台没准备好,因此实验不成功。以后用时再学。]

1.为了理解复杂的算法或者微妙的数据结构,可以选择一个平和安静的环境,并且全神贯注,不要从计算机或其他机器设备中获得任何帮助。

第十一章 完整示例

[很重要的实例,体现了如何在一个大型软件上添加一个小功能(要求很高),以后水平再好一些可以再回头学习和实践。作者详细的呈现了具体过程,包括查找可以参考的函数,如何寻找该函数相关信息,从中找出重点,从各个角度搜索来解决问题。其中解决问题部分,尤其是编译相关的部分。]

1.沿着类似的实体(类、函数、模块)来对软件进行建模,在相似的现存实体中,挑选具有不寻常名称的一个从而简化代码库中的文本搜索。

2.任何精确分析代码的企图,通常都会分支处众多的类、文件以及模块,并且快速将你淹没,因此,主动尝试将需要理解的代码减少到最小。

3.采用广度优先的搜索策略,从多个方向分析代码阅读中的问题,直到其中一个解决为止。

本文由作者上传并发布(或网友转载),绿林网仅提供信息发布平台。文章仅代表作者个人观点,未经作者许可,不可转载。
点击查看全文
相关推荐
热门推荐