《设计模式:可复用面向对象软件的基础》【PDF】下载链接:
https://u253469.pipipan.com/fs/253469-230382288

内容介绍

《设计模式:可复用面向对象软件的基础》是引导读者走出软件设计迷宫的指路明灯,凝聚了软件开发界几十年设计经验的结晶。四位顶尖的面向对象领域专家精心
选取了最具价值的设计实践,加以分类整理和命名,并用简洁而易于重用的形式表达出来。本书已经成为面向对象技术人员的圣经和词典,书中定义的23个模式逐
渐成为开发界技术交流所必备的基础知识和语汇。

目录

序言

前言

读者指南

第1章 引言

1.1 什么是设计模式

1.2 Smalltalk MVC中的设计模式

1.3 描述设计模式

1.4 设计模式的编目

1.5 组织编目

1.6 设计模式怎样解决设计问题

1.6.1 寻找合适的对象

1.6.2 决定对象的粒度

1.6.3 指定对象接口

1.6.4 描述对象的实现

1.6.5 运用复用机制

1.6.6 关联运行时刻和编译时刻的结构

1.6.7 设计应支持变化

1.7 怎样选择设计模式

1.8 怎样使用设计模式

第2章 实例研究:设计一个文档编辑器

2.1 设计问题

2.2 文档结构

2.2.1 递归组合

2.2.2 图元

2.2.3 组合模式

2.3 格式化

2.3.1 封装格式化算法

2.3.2 Compositor和Composition

2.3.3 策略模式

2.4 修饰用户界面

2.4.1 透明围栏

2.4.2 MonoGlyph

2.4.3 Decorator模式

2.5支持多种视感标准

2.5.1 对象创建的抽象

2.5.2 工厂类和产品类

2.5.3 Abstract Factory模式

2.6 支持多种窗口系统

2.6.1 我们是否可以使用Abstract
Factory模式

2.6.2 封装实现依赖关系

2.6.3 Window和Windowlmp

2.6.4 Bridge模式

2.7 用户操作

2.7.1 封装一个请求

2.7.2 Command类及其子类

2.7.3 撤消和重做

2.7.4 命令历史记录

2.7.5 Command模式

2.8 拼写检查和断字处理

2.8.1 访问分散的信息

2.8.2 封装访问和遍历

2.8.3 Iterator类及其子类

2.8.4 Iterator模式

2.8.5 遍历和遍历过程中的动作

2.8.6 封装分析

2.8.7 Visitor类及其子类

2.8.8 Visitor模式

2.9小结

第3章 创建型模式

第4章 结构型模式

第5章 行为模式

第6章 结

更多资料请关注我的新浪博客http://blog.sina.com.cn/u/3283485963
《设计模式:可复用面向对象软件的基础》【PDF】下载链接:
https://u253469.pipipan.com/fs/253469-230382288

更多书单和推荐电子书请关注:
http://zhaozhiyong.cn

《设计模式:可复用面向对象软件的基础》【PDF】下载的更多相关文章

  1. 《决战大数据:驾驭未来商业的利器》【PDF】下载

    内容简介 大数据时代的来临,给当今的商业带来了极大的冲击,多数电商人无不"谈大数据色变",并呈现出一种观望.迷茫.手足无措的状态.车品觉,作为一名经验丰富的电商人,在敬畏大数据的同 ...

  2. 大数据时代的图表可视化利器——highcharts,D3和百度的echarts

    大数据时代的图表可视化利器——highcharts,D3和百度的echarts https://blog.csdn.net/minidrupal/article/details/42153941   ...

  3. 决战大数据之三-Apache ZooKeeper Standalone及复制模式安装及测试

    决战大数据之三-Apache ZooKeeper Standalone及复制模式安装及测试 [TOC] Apache ZooKeeper 单机模式安装 创建hadoop用户&赋予sudo权限, ...

  4. 决战大数据之二:CentOS 7 最新JDK 8安装

    决战大数据之二:CentOS 7 最新JDK 8安装 [TOC] 修改hostname # hostnamectl set-hostname node1 --static # reboot now 重 ...

  5. 学习推荐《零起点Python大数据与量化交易》中文PDF+源代码

    学习量化交易推荐学习国内关于Python大数据与量化交易的原创图书<零起点Python大数据与量化交易>. 配合zwPython开发平台和zwQuant开源量化软件学习,是一套完整的大数据 ...

  6. asp.net大数据导出execl实现分开压缩并下载

    asp.net大数据导出execl实现分开压缩并下载 /// <summary> /// 导出数据到EXCEL 多个表的 /// </summary> /// <para ...

  7. 基于Greenplum Hadoop分布式平台的大数据解决方案及商业应用案例剖析

    随着云计算.大数据迅速发展,亟需用hadoop解决大数据量高并发访问的瓶颈.谷歌.淘宝.百度.京东等底层都应用hadoop.越来越多的企 业急需引入hadoop技术人才.由于掌握Hadoop技术的开发 ...

  8. 关于大数据时代传统商业存储的思考: 中心存储 VS 分布式存储

    尊重原创,转载请注明出处:http://anzhan.me ; http://blog.csdn.net/anzhsoft 今天和我们部门的老大1*1, 大家面对面沟通了一下到新的项目组的想法.而且也 ...

  9. cloudera cdh6.3 离线安装 经典大数据平台视频教程(含网盘下载地址)

    cdh6.3企业级大数据视频教程 链接:https://pan.baidu.com/s/1bLGrIwzpFQB-pQRb6KOmNg 提取码:i8h8 系统和软件版本1,操作系统:Centos7.6 ...

  10. 大数据之路week06--day01(VMware的下载与安装、安装CentOS)

    好了,从今天开始就开始正式的进入大数据道路的轨道上了,当然了,Java 也是需要不断地在日后进行反复地学习,熟练掌握.(这里我要说一下,Java种还有一些I/O流.Lambda表达式和一些常用工具类有 ...

随机推荐

  1. ssh相关原理学习与常见错误总结

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  2. Android Testing Point

    The test application demonstrates these key points: An Android test is itself an Android application ...

  3. phpcms v9 前台getshell脚本

    phpcms v9 前台getshell脚本 用法:python phpcmsv9getshell.py http://baidu.com # -*- coding:utf-8 -*- ''' --- ...

  4. nodejs+mongoose+websocket搭建xxx聊天室

    简介 本文是由nodejs+mongoose+websocket打造的一个即时聊天系统:本来打算开发一个类似于网页QQ类似功能的聊天系统,但是目前只是开发了一个模块功能 --- 类似群聊的,即一对多的 ...

  5. Android Imageview 图片居左居右,自定义圆角

    android:scaleType="fitStart"    图片靠左不变形显示, android:scaleType=”fitEnd”  图片靠右显示,不变形. 半透明andr ...

  6. HTML5开发必备的工具

    现在除了移动APP开发之外,比较火的就是html5开发了,现阶段的HTML5被看做是Web开发者创建流行web应用的利器,增加了对视频和Canvas2D的支持,它的优点就是可以跨平台使用,比如你是开发 ...

  7. test only

    Test TinyMCE only , Test Link

  8. JavaWeb框架SSH_Struts2_(四)----->表达式语言OGNL

    1. 表达式语言OGNL OGNL简介 OGNL基本语法 常量 操作符 OGNL表达式 OGNL基础 OGNL上下文 OGNL值栈 OGNL的访问 2. 具体内容 2.1 OGNL简介 OGNL(Ob ...

  9. java基础回顾(一)

    java的特点:开源.安全.跨平台.简单易懂.一次编译可多处运行. JDK:java开发工具包 JDK = JRE+JAVA开发工具 保证能够实现java开发的最小单元 JRE:java运行环境 JR ...

  10. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...