图书介绍
软件框架设计的艺术2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- (捷克)图拉赫著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115248497
- 出版时间:2011
- 标注页数:366页
- 文件大小:180MB
- 文件页数:383页
- 主题词:软件设计
PDF下载
下载说明
软件框架设计的艺术PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一部分 理论与理由4
第1章 软件开发的艺术4
1.1理性主义,经验主义以及无绪4
1.2软件的演变过程6
1.3大型软件8
1.4漂亮,真理和优雅9
1.5更好的无绪12
第2章 设计API的动力之源14
2.1分布式开发14
2.2模块化应用程序16
2.3交流互通才是一切20
2.4经验主义编程方式22
2.5开发第一个版本通常比较容易24
第3章 评价API好坏的标准26
3.1方法和字段签名26
3.2文件及其内容27
3.3环境变量和命令行选项29
3.4文本信息也是API30
3.5.协议32
3.6行为35
3.7国际化支持和信息国际化35
3.8 API的广泛定义37
3.9如何检查API的质量37
3.9.1可理解性37
3.9.2一致性38
3.9.3可见性39
3.9.4简单的任务应该有简单的方案40
3.9.5保护投资40
第4章 不断变化的目标42
4.1第一个版本远非完美42
4.2向后兼容43
4.2.1源代码兼容43
4.2.2二进制兼容44
4.2.3功能兼容——阿米巴变形虫效应50
4.3面向用例的重要性52
4.4 API设计评审55
4.5一个API的生命周期56
4.6逐步改善60
第二部分 设计实战67
第5章 只公开你要公开的内容67
5.1方法优于字段68
5.2工厂方法优于构造函数70
5.3让所有内容都不可更改71
5.4避免滥用setter方法72
5.5尽可能通过友元的方式来公开功能73
5.6赋予对象创建者更多权利77
5.7避免暴露深层次继承82
第6章 面向接口而非实现进行编程85
6.1移除方法或者字段87
6.2移除或者添加一个类或者接口88
6.3向现有的继承体系中添加一个接口或者类88
6.4添加方法或者字段88
6.5 Java中接口和类的区别90
6.6弱点背后的优点91
6.7添加方法的另一种方案92
6.8抽象类有没有用呢94
6.9要为增加参数做好准备95
6.10接口 VS.类97
第7章 模块化架构98
7.1模块化设计的类型100
7.2组件定位和交互103
7.3编写扩展点116
7.4循环依赖的必要性117
7.5满城尽是Lookup121
7.6 Lookup的滥用126
第8章 设计API时要区分其目标用户群129
8.1 C和Java语言中如何定义API和SPI129
8.2 API演进不同于SPI演进131
8.3 java.io.Writer这个类从JDK1.4到JDK 5的演进131
8.4合理分解API143
第9章 牢记可测试性147
9.1 API设计和测试148
9.2规范的光环正在褪去151
9.3好工具让API设计更简单153
9.4兼容性测试套件155
第10章 与其他API协作158
10.1谨慎使用第三方API158
10.2只暴露抽象内容162
10.3强化API的一致性164
10.4代理和组合168
10.5避免API的误用176
10.6不要滥用JavaBeans那种监听器机制180
第11章API具体运行时的一些内容184
11.1不要冒险186
11.2可靠性与无绪189
11.3同步和死锁191
11.3.1描述线程模型192
11.3.2 Java Monitors中的陷阱193
11.3.3触发死锁的条件196
11.3.4测试死锁201
11.3.5对条件竞争进行测试204
11.3.6分析随机故障206
11.3.7日志的高级用途208
11.3.8使用日志记录程序控制流程210
11.4循环调用的问题215
11.5内存管理218
第12章 声明式编程223
12.1让对象不可变225
12.2不可变的行为229
12.3文档兼容性230
第三部分 日常生活236
第13章 极端的意见有害无益236
13.1 API必须是漂亮的237
13.2 API必须是正确的237
13.3 API应该尽量简单240
13.4 API必须是高性能的242
13.5 API必须绝对兼容242
13.6 API必须是对称的245
第14章API设计中的矛盾之处247
14.1 API设计中的自相矛盾248
14.2背后隐藏的工作251
14.3不要害怕发布一个稳定的API252
14.4降低维护费用255
第15章 改进API258
15.1让有问题的类库重新焕发活力259
15.2自觉地升级与无意识地被迫升级265
15.3可选的行为268
15.4相似API的桥接和共存274
第16章 团队协作286
16.1在提交代码时进行代码评审286
16.2说服开发人员为他们的API提供文档290
16.3尽职尽责的监控者292
16.4.接受API的补丁297
第17章 利用竞赛游戏来提升API设计技巧300
17.1概述300
17.2第一天301
17.2.1非public类带来的问题304
17.2.2不可变性带来的问题304
17.2.3遗漏实现的问题308
17.2.4返回结果可能不正确的问题309
17.2.5第一天的解决方案310
17.3第二天313
17.3.1我想修正犯下的错误316
17.3.2第二天的解决方案317
17.4第三天:评判日320
17.5也来玩下这个游戏吧327
第18章 可扩展Visitor模式的案例328
18.1抽象类331
18.2为改进做好准备333
18.3默认的遍历334
18.4清楚地定义每个版本337
18.5单向改进339
18.6使用接口时的数据结构340
18.7针对用户和开发商的Visitor模式341
18.8三重调度343
18.9 Visitor模式的圆满结局345
18.10语法小技巧346
第19章 消亡的过程348
19.1明确版本的重要性349
19.2模块依赖的重要性349
19.3被移除的部分需要永久保留吗352
19.4分解庞大的API352
第20章 未来356
20.1原则性内容357
20.2无绪长存358
20.3 API设计方法论360
20.4编程语言的演变361
20.5教育的作用363
20.6共享365
参考书目366
热门推荐
- 2117697.html
- 1185167.html
- 986993.html
- 1181869.html
- 3845775.html
- 567667.html
- 2862778.html
- 2547758.html
- 2987199.html
- 2261723.html
- http://www.ickdjs.cc/book_2983422.html
- http://www.ickdjs.cc/book_1938995.html
- http://www.ickdjs.cc/book_1364122.html
- http://www.ickdjs.cc/book_3683009.html
- http://www.ickdjs.cc/book_1156912.html
- http://www.ickdjs.cc/book_2602116.html
- http://www.ickdjs.cc/book_3215633.html
- http://www.ickdjs.cc/book_2637030.html
- http://www.ickdjs.cc/book_939172.html
- http://www.ickdjs.cc/book_284762.html