系列图书推荐
图灵程序设计丛书.程序员修炼系列
企业应用架构模式(英文影印版)(企业应用开发圣经)(书评积分兑换赠品)
企业应用架构模式(英文影印版)(企业应用开发圣经..
企业应用架构模式(英文影印版)(企业应用开发圣经..
UML风格(第2版.英汉对照)(享誉全球的UML秘籍)..
UML风格(第2版.英汉对照)(享誉全球的UML秘籍)(赠..
敏捷软件开发:原则、模式与实践(C#版.英文注释版)..
敏捷软件开发:原则、模式与实践(C#版.英文注释版)..
高质量程序设计艺术(深入剖析著名开源软件的质量..
反模式:危机中软件、架构和项目的重构(软件工程圣..
敏捷软件开发:原则、模式与实践(英文注释版)(软件..
敏捷软件开发:原则、模式与实践(C#版)(生动阐述面..
程序员修炼之道(英文注释版)..
修改代码的艺术(修改代码的集大成之作)..
相关图书推荐
软件方法/软件工程
互联网时代的软件革命--SaaS架构设计(SD大会现场..
高效程序员的45个习惯:敏捷开发修炼之道(融知识、..
简单之美—软件开发实践者的思考(探索软件开发和..
迭代软件开发项目管理..
Head First 软件开发(中文版)..
同类热销商品
1
软件架构师应该知道的97件事(分享领导力、技能、思..
2
设计模式沉思录(设计模式开山鼻祖权威著作)..
3
企业应用架构模式(china-pub首发)..
4
深入Linux内核架构(全球开源社区集体智慧结晶,领..
5
分布式Java应用:基础与实践(分布式Java应用知识..
6
Android/OPhone开发完全讲义(china-pub首发)..
您的浏览历史
敏捷软件开发:原则、模式与实践(C#版)(生动阐述面向对象原则、敏捷实践、UML和模式)
ebook试读
|
评论打分
(共46条)
|
加入藏书阁
点击看大图
定价 : ¥69.00
普通会员 :
¥62.10
1-3星会员:
¥60.72
4-5星会员:
¥58.65
团购急调
缺货预定
促销活动
[本书]
参加人民邮电出版社满80元赠书活动
精彩评论
space23 评论:
一年前买的这本书,一年内把这本书看了好几遍。 这是我看到过的,对面向对象分析,最清晰透彻的书籍。 看过一点Head First《设计模式..
基本信息
原书名:
Agile Principles, Patterns, and Practices in C#
原出版社:
Prentice Hall PTR
作者:
(美)Robert C.Martin
Micah Martin
[作译者介绍]
译者:
邓辉
孙鸣
丛书名:
图灵程序设计丛书.程序员修炼系列
出版社:
人民邮电出版社
ISBN:
9787115165756
上架时间:
2007-12-7
出版日期:
2008 年1月
开本:
16开
页码:
560
版次:
1-1
所属分类:
计算机
>
软件工程及软件方法学
>
软件方法/软件工程
计算机
>
软件与程序设计
>
C#
编辑推荐
软件开发的不朽经典.
生动阐述面向对象原则、敏捷实践、UML和模式..
大量C++实战示例,让你亲历现场...
推荐阅读
软件开发团队成功秘笈..
市场价:¥45.00
4-5星价:
¥34.65
[
购买
] [
收藏
]
快速导航
内容简介
作译者
目录
插图
相关资源
评论交流
内容简介
回到顶部↑
本书中,享誉全球的软件开发专家和软件工程大师Robert C. Martin深入而生动地使用真实案例讲解了面向对象基本原则、重要的设计模式、UML和敏捷实践等程序员必备的知识。
本书于2003年荣获第13届Jolt大奖,是C++和Java程序员提高自身水平的绝佳教材,也适于用作高校计算机、软件工程专业相关课程的教材或参考书。
作译者
回到顶部↑
本书提供作译者介绍
Robert C.Martin(“Bob大叔”)世界级的软件开发大师,著名软件咨询公司Object Mento,公司的创始人和总裁。曾经担任C++Report杂志主编多年,也是设计模式和敏捷开发运动的主要倡导者之一。
..
<<
查看详细
目录
回到顶部↑
第一部分 敏捷开发
第1章 敏捷实践
1.1 敏捷联盟
1.1.1 人和交互重于过程和工具
1.1.2 可以工作的软件重于面面俱到的文档
1.1.3 客户合作重于合同谈判
1.1.4 随时应对变化重于遵循计划
1.2 原则
1.3 结论
1.4 参考文献
第2章 极限编程概述
2.1 极限编程实践
2.1.1 完整团队
2.1.2 用户故事
2.1.3 短交付周期
2.1.4 验收测试
2.1.5 结对编程
2.1.6 测试驱动开发
2.1.7 集体所有权
2.1.8 持续集成
. 2.1.9 可持续的开发速度
2.1.10 开放的工作空间
2.1.11 计划游戏
2.1.12 简单设计
2.1.13 重构
2.1.14 隐喻
2.2 结论
2.3 参考文献
第3章 计划
3.1 初始探索
3.2 发布计划
3.3 迭代计划
3.4 定义“完成”
3.5 任务计划
3.6 迭代
3.7 跟踪
3.8 结论
3.9 参考文献
第4章 测试
4.1 测试驱动开发
4.1.1 测试优先设计的例子
4.1.2 测试促使模块之间隔离
4.1.3 意外获得的解耦合
4.2 验收测试
4.3 意外获得的构架
4.4 结论
4.5 参考文献
第5章 重构
5.1 素数产生程序:一个简单的重构示例
5.1.1 单元测试
5.1.2 重构
5.1.3 最后审视
5.2 结论
5.3 参考文献
第6章 一次编程实践
6.1 保龄球比赛
6.2 结论
第二部分 敏捷设计
第7章 什么是敏捷设计
7.1 设计臭味
7.1.1 设计臭味——腐化软件的气味
7.1.2 僵化性
7.1.3 脆弱性
7.1.4 顽固性
7.1.5 粘滞性
7.1.6 不必要的复杂性
7.1.7 不必要的重复
7.1.8 晦涩性
7.2 软件为何会腐化
7.3 Copy程序
7.3.1 熟悉的场景
7.3.2 Copy程序的敏捷设计
7.4 结论
7.5 参考文献
第8章 SRP:单一职责原则
8.1 定义职责
8.2 分离耦合的职责
8.3 持久化
8.4 结论
8.5 参考文献
第9章 OCP:开放-封闭原则
9.1 OCP概述
9.2 Shape应用程序
9.2.1 违反OCP
9.2.2 遵循OCP
9.2.3 预测变化和“贴切的”结构
9.2.4 放置吊钩
9.2.5 使用抽象获得显式封闭
9.2.6 使用“数据驱动”的方法获取封闭性
9.3 结论
9.4 参考文献
第10章 LSP:Liskov替换原则
10.1 违反LSP的情形
10.1.1 简单例子
10.1.2 更微妙的违反情形
10.1.3 实际的例子
10.2 用提取公共部分的方法代替继承
10.3 启发式规则和习惯用法
10.4 结论
10.5 参考文献
第11章 DIP:依赖倒置原则
11.1 层次化
11.1.1 倒置的接口所有权
11.1.2 依赖于抽象
11.2 简单的DIP示例
11.3 熔炉示例
11.4 结论
11.5 参考文献
第12章 ISP:接口隔离原则
12.1 接口污染
12.2 分离客户就是分离接口
12.3 类接口与对象接口
12.3.1 使用委托分离接口
12.3.2 使用多重继承分离接口
12.4 ATM用户界面的例子
12.5 结论
12.6 参考文献
第13章 C#程序员UML概观
13.1 类图
13.2 对象图
13.3 顺序图
13.4 协作图
13.5 状态图
13.6 结论
13.7 参考文献
第14章 使用UML
14.1 为什么建模
14.1.1 为什么构建软件模型
14.1.2 编码前应该构建面面俱到的设计吗
14.2 有效使用UML
14.2.1 与他人交流
14.2.2 脉络图
14.2.3 项目结束文档
14.2.4 要保留的和要丢弃的
14.3 迭代式改进
14.3.1 行为优先
14.3.2 检查结构
14.3.3 想象代码
14.3.4 图的演化
14.4 何时以及如何绘制图示
14.4.1 何时要画图,何时不要画图
14.4.2 CASE 工具
14.4.3 那么,文档呢
14.5 结论
第15章 状态图
15.1 基础知识
15.1.1 特定事件
15.1.2 超状态
15.1.3 初始伪状态和结束伪状态
15.2 使用FSM图示
15.3 结论
第16章 对象图
16.1 即时快照
16.2 主动对象
16.3 结论
第17章 用例
17.1 编写用例
17.1.1 备选流程
17.1.2 其他东西呢
17.2 用例图
17.3 结论
17.4 参考文献
第18章 顺序图
18.1 基础知识
18.1.1 对象、生命线、消息及其他
18.1.2 创建和析构
18.1.3 简单循环
18.1.4 时机和场合
18.2 高级概念
18.2.1 循环和条件
18.2.2 耗费时间的消息
18.2.3 异步消息
18.2.4 多线程
18.2.5 主动对象
18.2.6 向接口发送消息
18.3 结论
第19章 类图
19.1 基础知识
19.1.1 类
19.1.2 关联
19.1.3 继承
19.2 类图示例
19.3 细节
19.3.1 类衍型
19.3.2 抽象类
19.3.3 属性
19.3.4 聚集
19.3.5 组合
19.3.6 多重性
19.3.7 关联衍型
19.3.8 内嵌类
19.3.9 关联类
19.3.10 关联修饰符
19.4 结论
19.5 参考文献
第20章 咖啡的启示
20.1 Mark IV型专用咖啡机
20.1.1 规格说明书
20.1.2 常见的丑陋方案
20.1.3 虚构的抽象
20.1.4 改进方案
20.1.5 实现抽象模型
20.1.6 这个设计的好处
20.2 面向对象过度设计
20.3 参考文献
第三部分 薪水支付案例研究
第21章 COMMAND模式和ACTIVE OBJECT模式:多功能与多任务
21.1 简单的Command
21.2 事务
21.2.1 实体上解耦和时间上解耦
21.2.2 时间上解耦
21.3 Undo()方法
21.4 ACTIVE OBJECT模式
21.5 结论
21.6 参考文献
第22章 TEMPLATE METHOD模式和STRATEGY模式:继承和委托
22.1 TEMPLATE METHOD模式
22.1.1 滥用模式
22.1.2 冒泡排序
22.2 STRATEGY模式
22.3 结论
22.4 参考文献
第23章 FACADE模式和MEDIATOR模式
23.1 FACADE模式
23.2 MEDIATOR模式
23.3 结论
23.4 参考文献
第24章 SINGLETON模式和MONOSTATE模式
24.1 SINGLETON模式
24.1.1 SINGLETON模式的好处
24.1.2 SINGLETON模式的代价
24.1.3 运用SINGLETON模式
24.2 MONOSTATE模式
24.2.1 MONOSTATE模式的好处
24.2.2 MONOSTATE模式的代价
24.2.3 运用MONOSTATE模式
24.3 结论
24.4 参考文献
第25章 NULL OBJECT模式
25.1 描述
25.2 结论
25.3 参考文献
第26章 薪水支付案例研究:第一次迭代开始
26.1 初步的规格说明
26.2 基于用例分析
26.2.1 增加新雇员
26.2.2 删除雇员
26.2.3 登记考勤卡
26.2.4 登记销售凭条
26.2.5 登记工会服务费
26.2.6 更改雇员明细
26.2.7 发薪日
26.3 反思:找出底层的抽象
26.3.1 雇员支付类别抽象
26.3.2 支付时间表抽象
26.3.3 支付方式
26.3.4 从属关系
26.4 结论
26.5 参考文献
第27章 薪水支付案例研究:实现
27.1 事务
27.1.1 增加雇员
27.1.2 删除雇员
27.1.3 考勤卡、销售凭条以及服务费用
27.1.4 更改雇员属性
27.1.5 犯了什么晕
27.1.6 支付雇员薪水
27.1.7 支付领月薪的雇员薪水
27.1.8 支付钟点工薪水
27.2 主程序
27.3 数据库
27.4 结论
27.5 关于本章
27.6 参考文献
第四部分 打包薪水支付系统
第28章 包和组件的设计原则
28.1 包和组件
28.2 组件的内聚性原则:粒度
28.2.1 重用—发布等价原则
28.2.2 共同重用原则
28.2.3 共同封闭原则
28.2.4 组件内聚性总结
28.3 组件的耦合性原则:稳定性
28.3.1 无环依赖原则
28.3.2 稳定依赖原则
28.3.3 稳定抽象原则
28.4 结论
第29章 FACTORY模式
29.1 依赖问题
29.2 静态类型与动态类型
29.3 可替换的工厂
29.4 对测试支架使用对象工厂
29.5 工厂的重要性
29.6 结论
29.7 参考文献
第30章 薪水支付案例研究:包分析
30.1 组件结构和符号
30.2 应用CCP
30.3 应用REP
30.4 耦合和封装
30.5 度量
30.6 度量薪水支付应用程序
30.6.1 对象工厂
30.6.2 重新思考内聚的边界
30.7 最终的包结构
30.8 结论
30.9 参考文献
第31章 COMPOSITE模式
31.1 组合命令
31.2 多重性还是非多重性
31.3 结论
第32章 OBSERVER——演化至模式
32.1 数字时钟
32.2 OBSERVER模式
32.2.1 模型
32.2.2 面向对象设计原则的运用
32.3 结论
32.4 参考文献
第33章 ABSTRACT SERVER模式、 ADAPTER模式和BRIDGE模式
33.1 ABSTRACT SERVER模式
33.2 ADAPTER模式
33.2.1 类形式的ADAPTER模式
33.2.2 调制解调器问题、适配器以及LSP
33.3 BRIDGE模式
33.4 结论
33.5 参考文献
第34章 PROXY模式和GATEWAY模式:管理第三方API
34.1 PROXY模式
34.1.1 实现PROXY模式
34.1.2 小结
34.2 数据库、中间件以及其他第三方接口
34.3 TABLE DATA GATEWAY
34.3.1 测试和内存TDG
34.3.2 测试DbGateWay
34.4 可以用于数据库的其他模式
34.5 结论
34.6 参考文献
第35章 VISITOR模式
35.1 VISITOR模式
35.2 ACYCLIC VISITOR模式
35.3 DECORATOR模式
35.4 EXTENSION OBJECT模式
35.5 结论
35.6 参考文献
第36章 STATE模式
36.1 嵌套switch/case语句
36.1.1 内部作用域的状态变量
36.1.2 测试动作
36.1.3 代价和收益
36.2 迁移表
36.2.1 使用表解释
36.2.2 代价和收益
36.3 STATE模式
36.3.1 STATE模式和 STRATEGY模式
36.3.2 代价和收益
36.4 状态机编译器
36.4.1 SMC生成的Turnstile.cs以及其他支持文件
36.4.2 代价和收益
36.5 状态机应用的场合
36.5.1 作为GUI中的高层应用策略
36.5.2 GUI交互控制器
36.5.3 分布式处理
36.6 结论
36.7 参考文献
第37章 薪水支付案例研究:数据库
37.1 构建数据库
37.2 一个代码设计缺陷
37.3 增加雇员
37.4 事务
37.5 加载Employee对象
37.6 还有什么工作
第38章 薪水支付系统用户界面:Model-View-Presenter
38.1 界面
38.2 实现
38.3 构建窗口
38.4 Payroll窗口
38.5 真面目
38.6 结论
38.7 参考文献
附录A 双公司记
Rufus公司:“日落”项目
Rupert工业公司:“朝晖”项目
附录B 什么是软件
索引
↓展开全部内容
【插图】
相关资源
回到顶部↑
·
程序员的7种武器(正则表达式、编程语言、数据库、算法、软件调试、开发环境)
评论交流
共有46人开贴评论 60人参与评论 45人参与打分
查看
28人
62%
用户平均打分
我要写评论
如何参与评论和打分
10人
22%
5人
11%
0人
0%
2人
4%
__richard__
三级评论员
评价等级:
发表于:2008-2-11 17:34:00
书是不错,但是,对于当今的中国软件业来说,这本书的用途不大.毕竟真正注重流程的公司不多,大多数项目还是处于小作坊开发阶段.只要我把功能实现就OK了,对于以后的扩展性考虑得不全.设计模式/UML也就是成为了摆设.
回复
(
6
条评论--
)
您觉得呢?
送鲜花
(得
2
支)
扔鸡蛋
(得
5
个)
正在读取本评论的讨论,请稍侯……
wy631
二级评论员
评价等级:
发表于:2010-1-21 15:10:00
一本比较经典的书慕名而买,看了一段时间还没有看完,书中的内容有点难,而且实用性不强,只能自己理解后才可以体现它的价值。
回复
您觉得呢?
送鲜花
(得
0
支)
扔鸡蛋
(得
0
个)
正在读取本评论的讨论,请稍侯……
gxm868
一级评论员
评价等级:
发表于:2009-8-10 21:02:00
这本书感觉较难理解。而且很多章节好像没有把事情说完,有点意犹未尽的感觉。
回复
您觉得呢?
送鲜花
(得
0
支)
扔鸡蛋
(得
0
个)
正在读取本评论的讨论,请稍侯……
planst
一级评论员
评价等级:
发表于:2009-6-29 12:57:00
果然是经典之书。虽然我还没看完,但对我的帮助挺大,以前很多模糊的概念现在也都清晰了,强烈推荐。
回复
您觉得呢?
送鲜花
(得
0
支)
扔鸡蛋
(得
0
个)
正在读取本评论的讨论,请稍侯……
space23
一级评论员
评价等级:
发表于:2009-1-21 14:13:00
一年前买的这本书,一年内把这本书看了好几遍。
这是我看到过的,对面向对象分析,最清晰透彻的书籍。
看过一点Head First《设计模式》和gof23,但是那些高屋建瓴的讲解和嬉笑怒骂的方式,太容易对设计模式造成理解的偏差了。而此书,从具体实例出发,描述了自己每次增量式设计的具体思路,一小步一小步的改进,为什么这么改,这么改的代价与收益是什么。设计中犯下了哪些错误,如何修正这些错误。
就如同,你站在一个系统架构师和高级程序员的背后,他们一边设计,一边编码,全被你听到、看到一样。
如果你再动手敲上一遍代码,呵呵,收获很多。
谢谢Bob大叔!
回复
您觉得呢?
送鲜花
(得
2
支)
扔鸡蛋
(得
0
个)
正在读取本评论的讨论,请稍侯……
加载中...
我要写评论
查看所有评论交流
(共46条)