展开全部

主编推荐语

一本基于实例驱动的设计模式实践指南,全面提升软件开发人员的设计功力。

内容简介

本书分为4个部分,共26章:第1部分(第1章-第2章)为基础知识,包括设计模式概述、UML类图和面向对象设计原则等内容;第2部分(第3章-第8章)为创建的艺术,包括6种常用的创建型设计模式;第3部分(第9章-第15章)为组合的艺术,包括7种常用的结构型设计模式;第4部分(第16章-第26章)为交互的艺术,包括11种常用的行为型设计模式。

本书可作为一线软件开发人员、高等院校计算机及软件等相关专业师生、IT培训机构讲师和学员、设计模式研究人员和模式爱好者的参考用书和自学读物。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 实例目录
  • 第1部分 基础知识
  • 第1章 从招式与内功谈起
  • 1.1 设计模式从何而来
  • 1.2 设计模式是什么
  • 1.3 设计模式有什么用
  • 1.4 个人观点
  • 第2章 预备知识
  • 2.1 UML概述
  • 2.2 类与类的UML图示
  • 2.3 类之间的关系
  • 2.4 面向对象设计原则概述
  • 2.5 单一职责原则
  • 2.6 开闭原则
  • 2.7 里氏代换原则
  • 2.8 依赖倒转原则
  • 2.9 接口隔离原则
  • 2.10 合成复用原则
  • 2.11 迪米特法则
  • 第2部分 创建的艺术
  • 第3章 确保对象的唯一性
  • 3.1 单例模式的动机
  • 3.2 单例模式概述
  • 3.3 负载均衡器的设计
  • 3.4 饿汉式单例与懒汉式单例的讨论
  • 3.5 一种更好的单例实现方法
  • 3.6 单例模式总结
  • 第4章 集中式工厂的实现
  • 4.1 图表库的设计
  • 4.2 简单工厂模式概述
  • 4.3 完整解决方案
  • 4.4 方案的改进
  • 4.5 创建对象与使用对象
  • 4.6 简单工厂模式的简化
  • 4.7 简单工厂模式总结
  • 第5章 多态工厂的实现
  • 5.1 日志记录器的设计
  • 5.2 工厂方法模式概述
  • 5.3 完整解决方案
  • 5.4 反射与配置文件
  • 5.5 重载的工厂方法
  • 5.6 工厂方法的隐藏
  • 5.7 工厂方法模式总结
  • 第6章 产品族的创建
  • 6.1 界面皮肤库的初始设计
  • 6.2 产品等级结构与产品族
  • 6.3 抽象工厂模式概述
  • 6.4 完整解决方案
  • 6.5 开闭原则的倾斜性
  • 6.6 抽象工厂模式总结
  • 第7章 对象的克隆
  • 7.1 大同小异的工作周报
  • 7.2 原型模式概述
  • 7.3 完整解决方案
  • 7.4 带附件的周报
  • 7.5 原型管理器的引入和实现
  • 7.6 原型模式总结
  • 第8章 复杂对象的组装与创建
  • 8.1 游戏角色设计
  • 8.2 建造者模式概述
  • 8.3 完整解决方案
  • 8.4 关于Director的进一步讨论
  • 8.5 建造者模式总结
  • 第3部分 组合的艺术
  • 第9章 不兼容结构的协调
  • 9.1 没有源码的算法库
  • 9.2 适配器模式概述
  • 9.3 完整解决方案
  • 9.4 类适配器模式
  • 9.5 双向适配器模式
  • 9.6 缺省适配器模式
  • 9.7 适配器模式总结
  • 第10章 处理多维度变化
  • 10.1 跨平台图像浏览系统
  • 10.2 桥接模式概述
  • 10.3 完整解决方案
  • 10.4 适配器模式与桥接模式的联用
  • 10.5 桥接模式总结
  • 第11章 树形结构的处理
  • 11.1 设计杀毒软件的框架结构
  • 11.2 组合模式概述
  • 11.3 完整解决方案
  • 11.4 透明组合模式与安全组合模式
  • 11.5 Sunny公司组织结构
  • 11.6 组合模式总结
  • 第12章 扩展系统功能
  • 12.1 图形界面构件库的设计
  • 12.2 装饰模式概述
  • 12.3 完整解决方案
  • 12.4 透明装饰模式与半透明装饰模式
  • 12.5 装饰模式注意事项
  • 12.6 装饰模式总结
  • 第13章 提供统一入口
  • 13.1 文件加密模块的设计
  • 13.2 外观模式概述
  • 13.3 完整解决方案
  • 13.4 抽象外观类的引入
  • 13.5 外观角色设计补充说明
  • 13.6 外观模式总结
  • 第14章 实现对象的复用
  • 14.1 围棋棋子的设计
  • 14.2 享元模式概述
  • 14.3 完整解决方案
  • 14.4 带外部状态的解决方案
  • 14.5 单纯享元模式和复合享元模式
  • 14.6 关于享元模式的几点补充
  • 14.7 享元模式总结
  • 第15章 对象的间接访问
  • 15.1 收费商务信息查询系统的设计
  • 15.2 代理模式概述
  • 15.3 完整解决方案
  • 15.4 远程代理
  • 15.5 虚拟代理
  • 15.6 Java动态代理
  • 15.7 代理模式总结
  • 第4部分 交互的艺术
  • 第16章 请求的链式处理
  • 16.1 采购单的分级审批
  • 16.2 职责链模式概述
  • 16.3 完整解决方案
  • 16.4 纯与不纯的职责链模式
  • 16.5 职责链模式总结
  • 第17章 请求发送者与接收者解耦
  • 17.1 自定义功能键
  • 17.2 命令模式概述
  • 17.3 完整解决方案
  • 17.4 命令队列的实现
  • 17.5 撤销操作的实现
  • 17.6 请求日志
  • 17.7 宏命令
  • 17.8 命令模式总结
  • 第18章 自定义语言的实现
  • 18.1 机器人控制程序
  • 18.2 文法规则和抽象语法树
  • 18.3 解释器模式概述
  • 18.4 完整解决方案
  • 18.5 再谈Context的作用
  • 18.6 解释器模式总结
  • 第19章 遍历聚合对象中的元素
  • 19.1 销售管理系统中数据的遍历
  • 19.2 迭代器模式概述
  • 19.3 完整解决方案
  • 19.4 使用内部类实现迭代器
  • 19.5 JDK内置迭代器
  • 19.6 迭代器模式总结
  • 第20章 协调多个对象之间的交互
  • 20.1 客户信息管理窗口的初始设计
  • 20.2 中介者模式概述
  • 20.3 完整解决方案
  • 20.4 中介者与同事类的扩展
  • 20.5 中介者模式总结
  • 第21章 撤销功能的实现
  • 21.1 可悔棋的中国象棋
  • 21.2 备忘录模式概述
  • 21.3 完整解决方案
  • 21.4 实现多次撤销
  • 21.5 再谈备忘录的封装
  • 21.6 备忘录模式总结
  • 第22章 对象间的联动
  • 22.1 多人联机对战游戏的设计
  • 22.2 观察者模式概述
  • 22.3 完整解决方案
  • 22.4 JDK对观察者模式的支持
  • 22.5 观察者模式与Java事件处理
  • 22.6 观察者模式与MVC
  • 22.7 观察者模式总结
  • 第23章 对象状态及其转换
  • 23.1 银行系统中的账户类设计
  • 23.2 状态模式概述
  • 23.3 完整解决方案
  • 23.4 共享状态
  • 23.5 使用环境类实现状态转换
  • 23.6 状态模式总结
  • 第24章 算法的封装与切换
  • 24.1 电影票打折方案
  • 24.2 策略模式概述
  • 24.3 完整解决方案
  • 24.4 策略模式的两个典型应用
  • 24.5 策略模式总结
  • 第25章 定义算法的框架
  • 25.1 银行利息计算模块
  • 25.2 模板方法模式概述
  • 25.3 完整解决方案
  • 25.4 钩子方法的使用
  • 25.5 模板方法模式总结
  • 第26章 操作复杂对象结构
  • 26.1 OA系统中员工数据汇总
  • 26.2 访问者模式概述
  • 26.3 完整解决方案
  • 26.4 访问者模式与组合模式联用
  • 26.5 访问者模式总结
  • 附录A 常用设计模式的定义及结构图
  • 参考文献
展开全部

评分及书评

5.0
7个评分
  • 用户头像
    给这本书评了
    5.0
    非常棒的设计模式讲解✌️

    看过几本类似的讲设计模式的,就这本讲的最清楚了👌

      转发
      评论
      用户头像
      给这本书评了
      5.0

      这是得到电子书目前为止讲设计模式讲的最好的。

        转发
        评论
        用户头像
        给这本书评了
        5.0
        目前读到最好的设计模式书

        除了这本书还读过三本关于设计模式的书。首先是原著翻译版,没看懂😭。于是买了一本可能会通俗易懂的,结果还是觉得没太明白。那个时候觉得可能自己经验还不够。后来又找了一本可能会通俗易懂的,依然没太看明白。有点儿想放弃了。今年参加软考高级系统架构设计师,看到有设计模式部分,想着就硬背吧,就又找哪本书有比较全的设计模式清单,碰巧在得到看到了这本,一下子整个人就通透了。于是在考完试后专门花时间把这本书全部完整看了一遍。强烈推荐想学设计模式的朋友先看这本书!这本书先介绍了模式与设计模式的由来,然后介绍了面向对象设计原则以及 UML。这些是设计模式的基础知识,作者介绍的也是通俗易懂且精炼。随后介绍了三大类设计模式。这不就和别的书差不多嘛,为什么非得看这本呢?因为介绍设计模式的时候,作者先给出应用场景案例或者问题。然后给出一个基本设计方案,再剖析其中存在的问题,由此引出对应的设计模式。再介绍这种模式在刚才的案例上具体怎么用。最后总结归纳这个模式的优缺点和适用场景。重点是案例和文字都非常通俗易懂和精炼,没有废话!这本书值得买一本收藏,放书架有时间就拿出来翻一翻。

          转发
          评论

        出版方

        清华大学出版社

        清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。