![Design by Contract原则与实践](https://cover.qianqiantushu.cc/4/s68d245b.jpg)
![Design by Contract原则与实践](https://cover.qianqiantushu.cc/4/s68d245b.jpg)
Design by Contract原则与实践PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:(美)Richard Mitchell,(美)Jim Mckim著;孟岩译
- 出 版 社:北京:人民邮电出版社
- 出版年份:2003
- ISBN:7115115702
- 页数:252 页
目录 1
第1章契约式设计初探 1
1.1概述 1
1.2顾客管理器范例 2
1.3一些问题 5
1.4 CUSTOMER—MANAGER的契约 6
1.5 临时总结 9
1.6运行时检测 11
1.7可靠的文档 13
1.8 小结 15
1.9一言以蔽之 15
1.10练习 15
第2章契约式设计的基本原则 17
2.1 关于本章 17
2.2栈 18
2.3区分命令和查询 19
2.4命名规范 22
2.5区分基本查询和派生查询 23
2.6说明命令对基本查询的影响 26
2.7用不变式确定恒定特性 34
2.8类及其契约 36
2.9基本查询是栈的一个概念模型 38
2.10六大原则 42
2.11 练习 43
第3章运用六大原则 47
3.1 关于本章 47
3.2字典 47
3.3特性分离与分类 48
3.4后验条件 50
3.5先验条件 56
3.6不变式 62
3.7关于字典的完整的契约级概括 63
3.8 小结 65
3.9练习 66
第4章契约的构造支持类——不可变列表 69
4.1 关于本章 69
4.2支持线性结构 69
4.3契约只涉及表达式 70
4.4不可变列表 71
4.5不可变列表的契约 72
4.5.1基本查询 72
4.5.2创建命令 74
4.5.3派生查询count 74
4.5.4派生查询preceded_by 74
4.5.5派生查询item 75
4.5.6派生查询is_equal 77
4.5.7派生查询sublist 79
4.7练习 81
4.6小结 81
第5章六大原则在QUEUE设计中的运用 83
5.1 关于本章 83
5.2队列 83
5.3 remove特性的契约 84
5.4将count作为一个派生特性 88
5.5 initialize特性的契约 91
5.6 head特性的契约 93
5.8更多派生查询 94
5.7put特性的契约 94
5.9小结 95
5.10练习 96
第6章契约式设计与继承 99
6.1关于本章 99
6.2超类和子类 99
6.3重新定义契约 100
6.3.1 Eiffel 语法 104
6.3.2小结 107
6.4不变式和继承 108
6.5以被确保的后验条件定义超类 109
6.6两种继承 116
6.7小结 117
6.8练习 117
第7章框定规则 119
7.1关于本章 119
7.2变化规格和框定规则 119
7.3使用不可变列表为put撰写框定规则 121
7.4使用“forall”为put撰写框定规则 128
7.5框定规则的类别 130
7.7关于预处理器的补充说明 132
7.6练习 132
第8章契约式设计的收益 137
8.1关于本章 137
8.2几种优点 137
8.3更优秀的设计 138
8.4提高可靠性 140
8.5更出色的文档 140
8.7支持复用 142
8.6简化调试 142
8.8契约式设计与防御性编程 143
8.8.1防止程序接受错误的输入 143
8.8.2给程序穿上“防弹衣” 144
8.8.3防御性编程 145
8.9契约的一些开销和限制 146
第9章观察者框架中的契约 149
9.1关于本章 149
9.2观察者框架 150
9.3不可变集合 152
9.4观察者的系缚和解缚 155
9.5通知(一个观察者) 156
9.6通知(多个观察者) 158
9.7性能问题 160
9.8框定规则 161
9.9保密 164
9.10练习 166
10.1关于本章 169
第10章满足先验条件 169
10.2例子 170
10.3满足并测试先验条件 170
10.4测试与检验 172
10.5一个简单的计数器类 173
10.6从用户角度看示例程序 174
10.7程序的内部结构 176
10.8程序的执行情况 178
10.9一个次要的细节 184
10.10小结 186
10.11练习 187
第11章Java范例 189
11.1关于本章 189
11.2为什么选择Java 190
11.3队列 190
11.3.1基本查询size() 192
11.3.2基本查询get() 193
11.3.3基本查询head() 193
11.3.5派生查询shallow Copy() 194
11.3.4派生查询isEmpty() 194
11.3.6构造方法Queue 195
11.3.7命令put 196
11.3.8命令remove 196
11.3.9小结 198
11.4字典 198
11.4.1名字 199
11.4.2不变式 200
11.4.3基本查询 200
11.4.5命令 201
11.4.4一个派生查询 201
11.4.6构造方法 202
11.4.7一组实现类 203
11.5没有iContract的Java 203
11.6测试先验条件 207
11.7练习 212
第12章契约式分析 215
12.1关于本章 215
12.2一个用例 215
12.4 withdrawCash用例的契约 217
12.3分析模型中的契约 217
12.5从分析到设计 220
12.6问题域和系统模型 221
12.7对象限制语言 224
12.8小结 225
参考资料 227
契约式设计的理解及其在C/C++语言中的运用 231
什么是契约——Eiffel的观点 236
契约思想的一个反面案例 242
索引 245
- 《中风偏瘫 脑萎缩 痴呆 最新治疗原则与方法》孙作东著 2004
- 《语文教育教学实践探索》陈德收 2018
- 《彼得·布鲁克导演实践研究》邓小玲著 2019
- 《反思性实践》胡红梅, 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《环境影响评价公众参与理论与实践研究》樊春燕主编 2019
- 《学校特色教育探索与实践》管升起著 2019
- 《思维的囚徒 活出生命的意义7原则》赵晓瑞译;(美)亚历克斯·佩塔克斯 2019
- 《麦肯锡精英这样实践基本功》(日)户塚隆将著 2019
- 《财经新闻翻译实践教程》胡婉,黄剑,王旭泉主编 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019