如何阅读别人代码教案.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
如何阅读别人代码教案

如何阅读别人代码 code?reading ++++++++++++ 第一章:?导论 ++++++++++++ 1.要养成一个习惯,?经常花时间阅读别人编写的高品质代码. 2.要有选择地阅读代码,?同时,?还要有自己的目标.?您是想学习新的模式|编码风格|还是满足某些需求的方法. 3.要注意并重视代码中特殊的非功能性需求,?这些需求也许会导致特殊的实现风格. 4.在现有的代码上工作时,?请与作者和维护人员进行必要的协调,?以避免重复劳动或产生厌恶情绪. 5.请将从开放源码软件中得到的益处看作是一项贷款,?尽可能地寻找各种方式来回报开放源码社团. 6.多数情况下,?如果您想要了解别人会如何完成这个功能呢?,?除了阅读代码以外,?没有更好的方法. 7.在寻找bug时,?请从问题的表现形式到问题的根源来分析代码.?不要沿着不相关的路径(误入歧途). 8.我们要充分利用调试器|编译器给出的警告或输出的符号代码|系统调用跟踪器|数据库结构化查询语言的日志机制|包转储工具和Windows的消息侦查程序,?定出的bug的位置. 9.对于那些大型且组织良好的系统,?您只需要最低限度地了解它的全部功能,?就能够对它做出修改. 10.当向系统中增加新功能时,?首先的任务就是找到实现类似特性的代码,?将它作为待实现功能的模板. 11.从特性的功能描述到代码的实现,?可以按照字符串消息,?或使用关键词来搜索代码. 12.在移植代码或修改接口时,?您可以通过编译器直接定位出问题涉及的范围,?从而减少代码阅读的工作量. 13.进行重构时,?您从一个能够正常工作的系统开始做起,?希望确保结束时系统能够正常工作.?一套恰当的测试用例(test?case)可以帮助您满足此项约束. 14.阅读代码寻找重构机会时,?先从系统的构架开始,?然后逐步细化,?能够获得最大的效益. 15.代码的可重用性是一个很诱人,?但难以理解与分离,?可以试着寻找粒度更大一些的包,?甚至其他代码. 16.在复查软件系统时,?要注意,?系统是由很多部分组成的,?不仅仅只是执行语句.?还要注意分析以下内容:?文件和目录结构|生成和配置过程,用户界面和系统的文档. 18.可以将软件复查作为一个学习|讲授|援之以手和接受帮助的机会. ++++++++++++++++++++ 第二章:?基本编程元素 ++++++++++++++++++++ 19.第一次分析一个程序时,?main是一个好的起始点. 20.层叠if-else?if-...-else序列可以看作是由互斥选择项组成的选择结构. 21.有时,?要想了解程序在某一方面的功能,?运行它可能比阅读源代码更为恰当. 22.在分析重要的程序时,?最好首先识别出重要的组成部分. 23.了解局部的命名约定,?利用它们来猜测变量和函数的功能用途. 24.当基于猜测修改代码时,?您应该设计能够验证最初假设的过程.?这个过程可能包括用编译器进行检查|引入断言|或者执行适当的测试用例. 25.理解了代码的某一部分,?可能帮助你理解余下的代码. 26.解决困难的代码要从容易的部分入手. 27.要养成遇到库元素就去阅读相关文档的习惯;?这将会增强您阅读和编写代码的能力. 28.代码阅读有许多可选择的策略:?自底向上和自顶向下的分析|应用试探法和检查注释和外部文档,?应该依据问题的需要尝试所有这些方法. 29.for?(i=0;?in;?i++)形式的循环执行n次;?其他任何形式都要小心. 30.涉及两项不等测试(其中一项包括相等条件)的比较表达式可以看作是区间成员测试. 31.我们经常可以将表达式应用在样本数据上,?借以了解它的含义. 32.使用De?Morgan法则简化复杂的逻辑表达式. 33.在阅读逻辑乘表达式时,?问题可以认为正在分析的表达式以左的表达式均为true;?在阅读逻辑和表达式时,?类似地,?可以认为正在分析的表达式以左的表达式均为false. 34.重新组织您控制的代码,?使之更为易读. 35.将使用条件运行符??:的表达式理解为if代码. 36.不需要为了效率,?牺牲代码的易读性. 37.高效的算法和特殊的优化确实有可能使得代码更为复杂,?从而更难理解,?但这并不意味着使代码更为紧凑和不易读会提高它的效率. 38.创造性的代码布局可以用来提高代码的易读性. 39.我们可以使用空格|临时变量和括号提高表达式的易读性. 40.在阅读您所控制的代码时,?要养成添加注释的习惯. 41.我们可以用好的缩进以及对变量名称的明智选择,?提高编写欠佳的程序的易读性. 42.用diff

文档评论(0)

aena45 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档