实战Python设计模式:可复用面向对象软件开发实践
电子书推荐
-
敏捷软件开发:原则、模式与实践.pdf 评分:
中文名: 敏捷软件开发:原则、模式与实践 原名: Agile Software Development:Principles,Patterns and Practices 别名: 软件工程实践丛书 作者: (美)Robert C.Martin译者: 邓辉 孟岩图书分类: 软件 资源格式: PDF 版本: 扫描版 出版社: 清华大学出版社 (美)Pearson Education,Inc. 出版公司书号: ISBN 7-302-07197-7发行时间: 2003年9月 地区: 大陆 语言: 简体中文 简介: 内容介绍: 2003年6月荣获美国《软件开发》第13届震憾(Jolt)大奖! 在本书中,享誉全球的软件开发专家和软件工程大师 Robert C.Martin 将向您展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。这本综合性、实用性的敏捷开发和极限编程方面的指南,是由敏捷开发的创始人之一所撰写的。 ●讲述在预算和时间要求下,软件开发人员和项目经理如何使用敏捷开发完成项目。 ●使用真实案例讲解如何用极限编程来设计、测试、量构和结对编程 ●包含了极具价值的可多次使用的 C++ 和 JAVA 源代码。 ●重点讲述了如何使用 UML 和设计模式解决面向客户系统 本书主要包含4部分内容,这些内容对于今天的软件工程师都非常的重要,它们是: ●Agile方法:主要讲述了如何去使用 Agile 方法,其中有很大一部分内容是告诉你为什么要这样做。 ●面向对象设计原则:本书包含了11个面向对象设计原则,涵盖了包的设计和类的设计。这是我所见过的对这方面内容讲解的最清晰、最彻底、最深刻的唯一的一本书。 ●设计模式:本书中讲述了23个设计模式,并都有具体的实例。讲解的重点在如何在实际的应用中去使用模式,如何根据当前问题的上下文以及约束力去选择最适合的模式,以及何时避免使用模式。 ●UML:本书不是关于 UML 的,但是为了让读者更好的理解书中的内容,作者使用了一些UML图来展示设计思路。同时,本书中也对如何有效的使用UML做了深入的阐述。本书中有两个附录专门对UML进行了简介。 总之,本书是写给那些一线的软件工程师的。如果你想学习UML,如果你想学习如何去设计软件,如果你想学习设计模式,如果你想学习最好的软件开发实践,那么请阅读本书。 作者介绍: Robert Cecil Martin 是软件开发领域里的一个响当当的名字。1970年代,他还是个年轻小伙子的时候就是一位有名的 UNIX 黑客。经过长期的开发实践后,他成了软件开发领域中的知名专家。1990年代初,Rational 软件公司首席科学家 Grady Booch 邀请他加盟,目的是要借助他丰富的实践经验,结合 Booch 自己的软件设计理念,开发一套创新性的软件产品。这是个什么软件呢?说起来大名鼎鼎,就是 Rational ROSE 的早期版本!在 Rational 公司期间,Martin 丰富的实践经验与 Booch 深厚的理论功底形成了完美的组合,把面向对象设计的理论与实践推向了高峰。1994年,Martin的第一本著作《Designing Object-Oriented C++ Application Using the Booch Method》也由 Prentice Hal l出品。这两本书彼此相互辉映,当时引起了很大的反响。Martin 的这本书结合了当时最流行的面向对象 语言C++ 和最出色的面向对象设计建模方法 Booch Method,以大量实例讲解技术概念和应用方法,分析透彻,讲解务实,技术精妙,在读者中声誉极佳。这本书不单为 Martin 确立了软件设计领域顶尖专家的地位,而且奠定了他独一无二的写作风格。 目录: 第一部分 敏捷开发 第1章 敏捷联盟 第2章 极限编程概述 第3章 计划 第4章 测试 第5章 重构 第6章 一次编程实践 第二部分 敏捷设计 第7章 什么是敏捷设计 第8章 单一职责原则(SRP) 第9章 开放—封闭原则(OCP) 第10章 Liskov替换原则(LSP) 第11章 依赖倒置原则(DIP) 第12章 接口隔离原则(ISP) 第三部分 薪水支付案例研究 第13章 COMMAND模式和ACTIVE OBJECT模式 第14章 TEMPLATE METHOD模式和STRATEGY模式:继承与委托 第15章 FACADE模式和MEDIATOR模式 第16章 SINGLETON模式和MONOSTATE模式 第17章 NULL OBJECT模式 第18章 薪水支付案例研究:第一次迭代开始 第19章 薪水支付案例研究:实现 第四部分 打包薪水支付系统 第20章 包的设计原则 第21章 FACTORY模式 第22章 薪水支付案例研究(第2部分) 第五部分 气象站案例研究 第23章 COMPOSITE模式 第24章 OBSERVER模式—回归为模式 第25章 ABSTRACT SERVER模式、ADAPTER模式和BRIDGE模式 第26章 PROXY模式和STAIRWAY TO HEAVEN模式:管理第三方API 第27章 案例研究:气象站 第六部分 ETS案例研究 第28章 VISITOR模式 第29章 STATE模式 第30章 ETS框架 附录 附录A UML表示法I:CGI示例 附录B UML表示法II:统计多路复用器 附录C 两上公司的讽刺小品 附录D 源代码就是设计 索引
上传时间:2013-01 大小:17.95MB
- 2.14MB
Scrum敏捷软件开发过程.pdf
2022-07-12Scrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdfScrum敏捷软件开发过程.pdf
- 23.56MB
敏捷软件开发-原则、模式与实践.pdf
2015-01-21本书讲授了一些原则、模式以及实践,它们可以帮助软件开发人员在追求美的程序、设计以及团队的道路上迈出第一步。本书探索了基本的设计原则,软件设计结构的通用模式以及有利于团队融为一个有机整体的一系列实践。本书包含了许多代码,仔细研读这些代码是学习本书所教授的原则、模式及时间的最有效方法
- 17.94MB
敏捷软件开发原则、模式与实践.pdf
2008-10-15敏捷开发的经典书 内容简介 在这本书中,享誉全球的软件开发专家和软件工程大师Robert C.Martin将向您展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。这本综合性、实用性的敏捷开发和极限编程方面的指南,是由敏捷开发的创始人之一所撰写的。 ·讲述在预算和实践要求下,软件开发人员和项目经理如何使用敏捷开发完成项目。 ·使用真实案例讲解如何用极限编程来设计、测试、重构和结对编程。 ·包含了极具价值的可多次使用的C++和JAVA源代码 ·重点讲述了如何使用UML和设计模式解决面向客户系统的问题
- 17.94MB
敏捷软件开发.pdf
2010-02-04第一部分 敏捷开发 第1章 敏捷联盟 1.1 敏捷联盟 1.2 原则 1.3 结论 参考文献 第2章 极限编程概述 2.1 极限编程实践 2.2 结论 参考文献 第3章 计划 3.1 初始探索 3.2 发布计划 3.3 迭代计划 3.4 任务计划 3.5 迭代 3.6 结论 参考文献 . 第4章 测试 4.1 测试驱动的开发方法 4.2 验收测试 4.3 结论 参考文献 第5章 重构 5.1 素数产生程序:一个简单的重构示例 5.2 结论 参考文献 第6章 一次编程实践 6.1 保龄球比赛 6.2 结论 第II部分 敏捷设计 第7章 什么是敏捷设计 7.1 软件出了什么错 7.2 设计的臭味——腐化软件的气味 7.3 “Copy”程序 7.4 保持尽可能好的设计 7.5 结论 参考文献 第8章 单一职责原则(SRP) 8.1 单一职责原则(OCP) 8.2 结论 参考文献 第9章 开放—封闭原则(OCP) 9.1 开发—封闭原则(OCP) 9.2 描述 9.3 关键是抽象 9.4 结论 参考文献 第10章 Liskov替换原则(LSP) 10.1 Liskov替换原则(LSP) 10.2 一个违反LSP的简单例子 10.3 正方形和矩形,更微妙的违规 10.4 一个实际的例子 10.5 用提取公共部分的方法代替继承 10.6 启发式规则和习惯用法 10.7 结论 参考文献 第11章 依赖倒置原则(DIP) 11.1 依赖倒置原则(DIP) 11.2 层次化 11.3 一个简单的例子 11.4 熔炉示例 11.5 结论 参考文献 第12章 接口隔离原则(ISP) 12.1 接口污染 12.2 分离客户就是分离接口 12.3 接口隔离原则(ISP) 12.4 类接口与对象接口 12.5 ATM用户界面的例子 12.6 结论 参考文献 第III部分 薪水支付案例研究 第13章 COMMAND模式和ACTIVE OBJECT模式 13.1 简单的COMMAND 13.2 事务操作 13.3 UNDO 13.4 ACTIVE OBJECT模式 13.5 结论 参考文献 第14章 TEMPLATE METHOD模式和STRATEGY模式:继承与委托 14.1 TEMPLATE METHOD模式 14.2 STRATEGY模式 14.3 结论 参考文献 第15章 FACADE模式和MEDIATOR模式 15.1 FACADE模式 15.2 MEDIATOR模式 15.3 结论 参考文献 第16章 SINGLETON模式和MONOSTATE模式 16.1 SINGLETON模式 16.2 MONOSTATE模式 16.3 结论 参考文献 第17章 NULL OBJECT模式 17.1 结论 参考文献 第18章 薪水支付案例研究:第一次迭代开始 18.1 介绍 18.2 基于用例分析 18.3 反思:我们学到了什么 18.4 找出潜在的抽象 18.5 结论 参考文献 第19章 薪水支付案例研究:实现 19.1 增加雇员 19.2 删除雇员 19.3 时间卡、销售凭条以及服务费用 19.4 更改雇员属性 19.5 支付雇员薪水 19.6 主程序 19.7 数据库 19.8 薪水支付系统设计总结 第IV部分 打包薪水支付系统 第20章 包的设计原则 20.1 如何进行包的设计 20.2 粒度:包的内聚性原则 20.3 稳定性:包的耦合性原则 20.4 自顶向下设计 20.5 稳定依赖原则 20.6 稳定抽象原则 20.7 结论 第21章 FACTORY模式 21.1 依赖关系环 21.2 可替换的工厂 21.3 对测试支架使用对象工厂 21.4 使用对象工厂有多么重要 21.5 结论 参考文献 第22章 薪水支付案例研究(第2部分) 22.1 包结构和表示法 22.2 应用公共封闭原则(CCP) 22.3 应用重用发布等价原则(REP) 22.4 耦合和封装 22.5 度量 22.6 度量薪水支付应用程序 22.7 对象工厂 22.8 最终的包结构 22.9 结论 参考文献 第V部分 气象站案例研究 第23章 COMPOSITE模式 23.1 示例:组合命令 23.2 多重性带是非多重性 第24章 OBSERVER模式—回归为模式 24.1 数字时钟 24.2 结论 24.3 OBSERVER模式 参考文献 第25章 ABSTRACT SERVER模式、ADAPTER模式和BRIDGE模式 25.1 ABSTRACT SERVER模式 25.2 ADAPTER模式 25.3 BRIDGE模式 25.4 结论 参考文献 第26章 PROXY模式和STAIRWAY TO HEAVEN模式:管理第三方API 26.1 PROXY模式 26.2 STAIRWAY TO HEAVEN模式 26.3 可以用于数据库的其他模式 26.4 结论 参考文献 第27章 案例研究:气象站 27.1 Cloud公司 27.2 Nimbus-LC软件设计 27.3 结论 参考文献 27.4 Nimbus-LC需求概述 27.5 Nimbus-LC用例 27.6 Nimbus-LC发布计划 第VI部分 ETS案例研究 第28章 VISITOR模式 28.1 VISITOR设计模式系列 28.2 VISITOR模式 28.3 ACYCLIC VISITOR模式 28.4 DECORATOR模式 28.5 EXTENSION OBJECT模式 28.6 结论 参考文献 第29章 STATE模式 29.1 有限状态自动机概述 29.2 实现技术 29.3 STATE模式 29.4 应该在哪些地方使用状态机 29.5 作为GUI中的高层应用策略 29.6 结论 29.7 程序 参考文献 第30章 ETS框架 30.1 介绍 30.2 框架 30.3 框架设计 30.4 TEMPLATE METHOD模式的一个例子 30.5 TASKMASTER构架 30.6 结论 参考文献 附录 附录A UML表示法I:CGI示例 A.1 课程登记系统:问题描述 A.2 小结 参考文献 附录B UML表示法II:统计多路复用器 B.1 统计多路复用器的定义 B.2 结论 参考文献 附录C 两上公司的讽刺小品 附录D 源代码就是设计 索引
- 77.45MB
敏捷软件开发实践估算与计划 Mike Cohn
2019-03-18敏捷软件开发实践估算与计划 Mike Cohn,2016年版,清华大学出版社
- 29.88MB
敏捷软件开发书籍 pdf
2012-03-04敏捷软件开发书籍合集,包括: [Scrum敏捷软件开发] [The.Pragmatic.Bookshelf开发丛书-敏捷开发回顾:使团队更强大] [The.Pragmatic.Bookshelf开发丛书-敏捷开发指导] [敏捷开发修炼之道] [用户故事与敏捷方法]
- 45.47MB
敏捷软件开发 原则模式与实践
2018-09-07该资源为 敏捷软件开发 原则模式与实践 C#版PDF,解压即可
- 3.5MB
敏捷软件开发 PDF
2015-09-14敏捷软件开发简介,读书会分享资源不要白不要
- 10.0MB
敏捷软件开发:原则、模式与设计 (中文pdf版)1
2009-03-11敏捷软件开发:原则、模式与设计 (中文pdf版)
- 29.59MB
敏捷软件开发
2018-01-22Scrum精要.pdf 敏捷&迭代:踏上企业精益开发之路.doc 敏捷建模-极限编程和统一过程的有效实践.pdf 敏捷软件开发:原则、模式与实践.pdf
- 5.38MB
敏捷软件开发精要.pdf
2018-09-11敏捷软件开发精要,讲述敏捷开发方法、介绍、实施内容。
- 17.94MB
敏捷软件开发 中文版
2013-09-27agile software development
- 24.86MB
敏捷软件开发高清PDF
2013-03-18敏捷软件开发:原则、模式与实践高清版pdf,内容有开发、设计、实际应用
- 14.44MB
敏捷开发的艺术 pdf电子书
2010-08-12敏捷开发的艺术是一本非常不错的介绍敏捷开发的书。本书是其pdf电子档。
- 9.0MB
敏捷软件开发原则,模式与实践(中文)
2007-08-25敏捷软件开发原则,模式与实践<br>在这本书中,享誉全球的软件开发专家和软件工程大师Robert C.Martin将向您展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。这本综合性、实用性的敏捷开发和极限编程方面的指南,是由敏捷开发的创始人之一所撰写的。 <br>·讲述在预算和实践要求下,软件开发人员和项目经理如何使用敏捷开发完成项目。 <br>·使用真实案例讲解如何用极限编程来设计、测试、重构和结对编程。 <br>·包含了极具价值的可多次使用的C++和JAVA源代码 <br>·重点讲述了如何使用UML和设计模式解决面向客户系统的问题 <br>
- 11.20MB
[免费PDF高清]敏捷软件开发(英文版)Agile Principles, Patterns, and Practices in C#.rar
2018-04-17[免费PDF高清]敏捷软件开发(英文版)Agile Principles, Patterns, and Practices in C#.rar [免费PDF高清]敏捷软件开发(英文版)Agile Principles, Patterns, and Practices in C#.rar
- 55.30MB
Scrum敏捷软件开发_original.pdf
2016-11-16Scrum敏捷软件开发_original.pdf
- 3.2MB
最完整的Scrum敏捷软件开发过程
2018-09-11最完整的Scrum敏捷软件开发过程 PPT,最完整的Scrum敏捷软件开发过程 PPT
- 17.99MB
敏捷软件开发pdf
2013-03-10敏捷软件开发:原则、模式与实践(带书签).pdf
- 0B
Qt 5实现串口调试助手 (源工程文件、0积分下载)
2021-12-06基于Qt 5实现串口调试助手,程序仅供参考,修改了之前十六进制接收0xA0--0xFF有误的问题,新增了窗口自适应(ui文件设置栅格),文件详情可看博客链接https://blog.csdn.net/m0_51294753/article/details/121405661。
- 47.24MB
【SystemVerilog】路科验证V2学习笔记(全600页).pdf
2021-02-25SystemVerilog的听课学习笔记,包括讲义截取、知识点记录、注意事项等细节的标注。 目录如下: 第一章 SV环境构建常识 1 1.1 数据类型 1 四、二值逻辑 4 定宽数组 9 foreach 13 动态数组 16 队列 19 关联数组 21 枚举类型 23 字符串 25 1.2 过程块和方法 27 initial和always 30 function逻辑电路 33 task时序电路 35 动态 静态变量 39 1.3 设计例化和连接 45 第二章 验证的方法 393 动态仿真 395 静态检查 397 虚拟模型 403 硬件加速 405 效能验证 408 性能验证 410 第三章 SV组件实现 99 3.1 接口 100 什么是interface 101 接口的优势 108 3.2 采样和数据驱动 112 竞争问题 113 接口中的时序块clocking 123 利于clocking的驱动 133 3.3 测试的开始和结束 136 仿真开始 139 program隐式结束 143 program显式结束 145 软件域program 147 3.4 调试方法 150 第四章 验证的计划 166 4.1 计划概述 166 4.2 计划的内容 173 4.3 计划的实现 185 4.4 计划的进程评估 194 第五章 验证的管理 277 6.1 验证的周期检查 277 6.2 管理三要素 291 6.3 验证的收敛 303 6.4 问题追踪 314 6.5 团队建设 321 6.6 验证的专业化 330 第六章 验证平台的结构 48 2.1 测试平台 49 2.2 硬件设计描述 55 MCDF接口描述 58 MCDF接口时序 62 MCDF寄存器描述 65 2.3 激励发生器 67 channel initiator 72 register initiator 73 2.4 监测器 74 2.5 比较器 81 2.6 验证结构 95 第七章 激励发生封装:类 209 5.1 概述 209 5.2 类的成员 233 5.3 类的继承 245 三种类型权限 protected/local/public 247 this super 253 成员覆盖 257 5.4 句柄的使用 263 5.5 包的使用 269 第八章 激励发生的随机化 340 7.1 随机约束和分布 340 权重分布 353 条件约束 355 7.2 约束块控制 358 7.3 随机函数 366 7.4 数组约束 373 7.5 随机控制 388 第九章 线程与通信 432 9.1 线程的使用 432 9.2 线程的控制 441 三个fork...join 443 等待衍生线程 451 停止线程disable 451 9.3 线程的通信 458 第十章 进程评估:覆盖率 495 10.1 覆盖率类型 495 10.2 功能覆盖策略 510 10.3 覆盖组 516 10.4 数据采样 524 10.5 覆盖选项 544 10.6 数据分析 550 第十一章 SV语言核心进阶 552 11.1 类型转换 552 11.2 虚方法 564 11.3 对象拷贝 575 11.4 回调函数 584 11.5 参数化的类 590 第十二章 UVM简介 392 8.2 UVM简介 414 8.3 UVM组件 420 8.4 UVM环境 425
- 131.54MB
AutoSAR标准协议4.2.2
2020-01-19AutoSAR标准协议规范4.2.2,里面包含了AutoSAR组织所规定的AutoSAR架构的标准规范协议原文档。对AutoSAR的学习有一定的借鉴意义