下载地址:
下载地址1资源简介:
中文名: Java Bug模式详解作者: Eric Allen图书分类: 软件资源格式: PDF版本: 扫描版出版社: 清华大学出版社书号: ISBN:7302074437发行时间: 2003年11月地区: 大陆语言: 简体中文简介: 内容简介本书特点: ● 把软件开发的调试过程与极限编程方法融为一体 ● 对软件实例进行深层次的剖析 ● 为常见的调试问题提供便捷的参考清单 本书着重讨论和日常编程工作息息相关的JavaBug模式。Bug模式是一种非常实用的概念,它能提高用户检测和修正代码错误的能力。 本书共分为三个部分:第I部分是有关Bug模式的理论基础,介绍Bug模式的基本概念及应用这种方法的意义所在:第II部分是对最为常见的13种Bug模式的详细讲解,从中可以学会如何识别、预防这些典型Bug的方法;第III部分通过表格的形式对全书内容进行了总结。 本书适合于希望通过利用Bug模式来提高代码质量和效率的开发工程师和编程爱好者。 本书是关于计算机程序诊断和调试的方法论,它把调试过程描述为科学方法的一种完美体现。调试是人们容易轻视的一项任务。调试技能完全独立于其他编程技能,如程序的扩展性设计和软件重用。Eric Allen专注于调试的理论,研究调试与软件开发周期的其他阶段的相关性。他特别强调了单元测试对于实际调试过程的重要性。同时,Allen还指出,虽然测试和调试往往同步执行,但它们却是截然不同的两项工作。 本书的第一部分奠定了全书的理论基础。第二部分详述在编程过程中会频繁出现的各种类型的bug模式。对于每一种模式,Allen都对它的特征、处理方法和预防措施进行了讲解。Bug模式出现的频率越高,被诊断和有效消除的可能性就越大。本书的最后部分为可能出现的问题和解决方案提供了一个参考清单,并为Java开发人员提供了各种资源,包括Web站点、设计工具和参考书目。内容截图 目录: 第1章 混乱环境下的灵活方法1.1 软件设计.实现和维护的趋势1.1.1 对于稳定.安全系统的需求增加1.1.2 传统软件工程技术的局限性1.1.3 开放源代码的软件项目的可利用性1.1.4 对于跨平台语言的需求1.2 在快节奏的社会中学习1.3 bug模式简述1.4 小结第2章 Bug.规范和实现方案2.1 bug的概念2.2 一体性规范2.2.1 C++2.2.2 Python2.2.3 ML2.2.4 Pascal2.3 规范的好处2.4 实现方案与规范的差异2.5 利用素材建立经济有效的规范2.5.1 通过测试来排除规范错误2.5.2 单元测试的缺陷2.6 小结第3章 调试和开发过程3.1 将调试当作科学试验3.1.1 逐步规范化.整合并发行软件3.1.2 在设计上尽可能保持简单3.1.3 结对编程3.1.4 及时的客户反馈3.1.5 所有开发人员共享程序代码3.1.6 对任何可能产生问题的代码进行测试3.2 将调试测试程序并入到单元测试集3.3 展望:面向测试的语言3.4 小结第4章 调试和测试过程4.1 可测试的设计模式4.1.1 在模型中而不是视图中保管代码4.1.2 使用静态类型检查发现错误4.1.3 使用中介器封装跨越断层线的功能4.1.4 编写带有简短签名和默认参数的方法4.1.5 使用不修改内存状态的存取器4.1.6 通过接口定义程序外组件4.1.7 优先编写测试程序4.2 GlobalModel接口4.3 小结第5章 科学的调试方法5.1 软件是永不磨损的机器5.1.1 软件有多重5.1.2 小异常引起大问题5.2 Bug模式可以加快诊断bug的速度5.3 小结第6章 关于bug模式6.1 了解bug模式的重要性6.2 选择bug模式的原因6.3 如何组织bug模式6.4 Bug诊断的快速参考第7章 RogueTile模式7.1 Rogue Tile bug模式简述7.1.1 症状7.1.2 起因.解决方法和预防措施7.2 提取代码的其他障碍7.2.1 通用类型7.2.2 面向方面的编程技术7.3 小结第8章 随处可见的空指针8.1 空指针异常不提供任何信息8.2 难以捉摸的空指针第9章 Dangling Composite模式9.1 Dangling Composite bug模式简述9.1.1 症状9.1.2 起因9.1.3 解决方法和预防措施9.2 小结第10章 Null Flag模式10.1 Null Flag bug模式简述10.1.1 症状10.1.2 起因10.1.3 解决方法和预防措施10.2 健壮性和诊断证据的缺乏10.2.1 在更好的位置处理异常10.2.2 处理老式代码10.3 小结第11章 Double Descent模式11.1 Double Descent bug模式简述11.1.1 症状11.1.2 起因11.1.3 解决方法和预防措施11.1.4 快速但不完善的修正方法11.1.5 真正的修正方法11.2 小结第12章 Liar View模式12.1 Liar View bug模式简述12.1.1 症状12.1.2 起因12.1.3 解决方法和预防措施12.2 Liars并非仅出现在GUI程序12.3 小结第13章 Saboteur Data模式13.1 Saboteur Data bug模式简述13.1.1 症状13.1.2 语法原因13.1.3 语义原因13.1.4 解决办法和预防措施13.2 小结第14章 Broken Dispatch模式14.1 Broken Dispatch bug简述14.1.1 症状14.1.2 起因14.1.3 解决方法和预防措施14.2 小结第15章 Impostor Type模式15.1 Impostor Type bug模式简述15.1.1 症状15.1.2 起因15.1.3 解决方法和预防措施15.2 混合模式15.3 小结第16章 Split Cleaner模式16.1 Split Cleaner bug模式简述16.1.1 症状16.1.2 起因16.1.3 解决方法和预防措施,16.2 小结第17章 Fictitious Implementation模式17.1 Fictitius Implementation bug模式简述17.1.1 症状17.1.2 起因17.1.3 检测Fictitious Implementation17.1.4 解决方法和预防措施17.2 小结第18章 Orphaned Thread模式18.1 Orphaned Thread bug模式简述18.1.1 症状18.1.2 起因18.1.3 解决方法和预防措施18.2 Orphaned Thread和GUI18.3 小结第19章 Run-on Initializatier模式19.1 Run-On lnitializatier bug模式简述19.1.1 症状和起因19.1.2 解决方法和预防措施19.2 修正bug19.3 小结第20章 Platform-Dependent模式20.1 Platform-Dependentbug模式简述20.1.1 与供应商相关的bug20.1.2 与版本相关的bug20.1.3 与操作系统相关的bug20.2 小结第21章 诊断清单21.1 基本概念21.2 模式清单第22章 用于调试的设计模式22.1 最大化静态类型检查22.1.1 尽可能设置final字段22.1.2 将不可能被改写的方法设为fial22.1.3 包括作为默认值的类22.1.4 利用已检查异常确保所有客户端程序可处理异常情况22.1.5 定义新的异常类型来精确区分各种异常情况22.1.6 利用特定State类22.1.7 将类型转换和instanceof测试降至最少22.1.8 使用Singleton设计模式帮助最小化instanceof的使用22.2 将引入bug的可能降至最低22.2.1 提取通用代码22.2.2 尽可能实现纯功能性方法22.2.3 在构造函数中初始化所有字段22.2.4 出现异常情况时立即抛出异常22.2.5 出现错误时立刻报告错误消息22.2.6 尽早发现错误22.2.7 在代码中置入断言22.2.8 尽可能在用户可观察到的状态下测试代码22.3 征程尚未结束第23章 参考资料附录 String-parsing列表构造函数
飞网下载站,免费下载共享资料,内容涉及教育资源、专业资料、IT资源、娱乐生活、经济管理、办公文书、游戏资料等。