注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计其他编程语言/工具深入浅出设计模式(C#/Java版)

深入浅出设计模式(C#/Java版)

深入浅出设计模式(C#/Java版)

定 价:¥39.00

作 者: 莫勇腾 编著
出版社: 清华大学出版社
丛编项:
标 签: 设计模式

ISBN: 9787302135647 出版时间: 2006-09-01 包装: 胶版纸
开本: 24开 页数: 336 字数:  

内容简介

  本书是一本通俗易懂的设计模式入门指导图书。.作者用C#和Java两种语言,借助现实生活范例和图片演示,全面阐释GRASP及GoF 23种设计模式的概念及其编程应用,帮助你领悟设计模式的思想及精华,并将其融会贯通、灵活应用到自己的开发过程中。全书用两章篇幅对设计模式和GRASP作了基本介绍,用三章的篇幅全面展开对23种设计模式的讲解:对于每一种模式,先给出定义,接着通过类比方式用一个现实世界中的例子说明模式的应用,然后分别以C#和Java代码例述模式的架构实现。最后一章给出了两个设计模式综合案例,为读者实践设计模式提供了很好的学习环境。附录部分精心安排了自测题及答案,供读者练习并检验学习效果。..本书适合程序开发人员阅读,尤其适合作为大学计算机专业高年级学生和研究生的教学参考书。...

作者简介

  本书提供作译者介绍作者莫勇腾10年的软件系统管理、咨询、设计开发、组织与实施工作经验,擅长包括电子商务、ERP,工业控制工程及其它软件工程领域,是实战经验丰厚的一线杰出开发者。目前于广东汕头大学网络中心任项目经理。...

图书目录

第1章  基本概念    1
1.1  什么是设计模式    2
1.2  设计模式的作用    3
1.3  GRASP模式的分类    4
1.4  GoF设计模式的分类    4
1.5  模式的学习阶段    6
第2章  负责任地设计对象——GRASP    9
2.1  Information Expert(信息专家)    11
2.2  Creator(创造者)    13
2.3  Low Coupling(低耦合)    14
2.4  High Cohesion(高内聚)    15
2.5  Controller(控制器)    17
2.6  Polymorphism(多态)    18
2.7  Pure Fabrication(纯虚构)    19
2.8  Indirection(间接)    20
2.9  Protected Variations(受保护变化)    21
第3章  GoF-Creational Design Patterns创建型设计模式    23
3.1  Simple Factory Pattern(简单工厂模式)    24
3.1.1  定义    24
3.1.2  现实例子——国旗生产厂    26
3.1.3  C#实例1——电子付款系统    26
3.1.4  C#实例2——学校登录系统    29
3.1.5  Java实例——手机简单工厂    32
3.1.6  优势和缺陷    34
3.1.7  应用情景    34
3.2  Factory Method Pattern(工厂方法模式)    35
3.2.1  定义    35
3.2.2  现实例子——兵工厂    36
3.2.3  C#实例——多文档系统    37
3.2.4  Java实例——扩展了的手机工厂    41
3.2.5  优势和缺陷    44
3.2.6  应用情景    44
3.3  Abstract Factory Pattern(抽象工厂模式)    45
3.3.1  定义    45
3.3.2  现实例子——扩展了的兵工厂    48
3.3.3  C#实例——大陆生态系统    49
3.3.4  Java实例——电脑产品    52
3.3.5  优势和缺陷    57
3.3.6  应用情景    57
3.4  Builder Pattern(建造者模式)    58
3.4.1  定义    58
3.4.2  现实例子——快餐店    60
3.4.3  C#实例——车间造车    61
3.4.4  Java实例——建造房屋    65
3.4.5  优势和缺陷    69
3.4.6  应用情景    70
3.5  Prototype Pattern(原型模式)    70
3.5.1  定义    70
3.5.2  现实中的拷贝-粘贴    71
3.5.3  C#实例——颜色管理器    72
3.5.4  Java实例——简单ToolBar    74
3.5.5  Shallow Copy与Deep Copy    76
3.5.6  优势和缺陷    82
3.5.7  应用情景    82
3.6  Singleton Pattern(单例模式)    82
3.6.1  定义    82
3.6.2  现实中的单例——Windows Task Manager    83
3.6.3  C#实例——负载均衡控制器    84
3.6.4  Java实例——系统日志    86
3.6.5  Double Check Locking(双检锁)    89
3.6.6  优势和缺陷    93
3.6.7  应用情景    93
第4章  GoF-Structural Design Patterns结构型设计模式    95
4.1  Adapter Pattern(适配器模式)    96
4.1.1  定义    96
4.1.2  现实中的实例——电脑电源适配器    97
4.1.3  C#实例——化学数据银行    98
4.1.4  Java实例——清洁系统    102
4.1.5  优势和缺陷    104
4.1.6  应用情景    104
4.2  Bridge Pattern(桥接模式)    104
4.2.1  定义    104
4.2.2  现实中的实例——男人的约会    106
4.2.3  C#实例——商业对象与数据对象    107
4.2.4  Java实例——不同系统的图像处理    112
4.2.5  优势和缺陷    114
4.2.6  应用情景    115
4.3  Composite Pattern(组合模式)    115
4.3.1  定义    115
4.3.2  组合模式的现实应用——资源管理器    117
4.3.3  C#实例——图形树状对象结构    118
4.3.4  Java实例——文档格式化    121
4.3.5  优势和缺陷    124
4.3.6  应用情景    125
4.4  Decorator Pattern(装饰模式)    125
4.4.1  定义    125
4.4.2  现实中的装饰模式——相架    126
4.4.3  C#实例——图书馆中的项目    127
4.4.4  Java实例——自定义JButton    131
4.4.5  优势和缺陷    133
4.4.6  应用情景    134
4.5  Facade Pattern(外观模式)    134
4.5.1  定义    134
4.5.2  现实中的实例——顾客服务员    135
4.5.3  C#实例——抵押申请审核    136
4.5.4  Java实例——冲茶    139
4.5.5  优势和缺陷    143
4.5.6  应用情景    143
4.6  Flyweight Pattern(轻量级模式)    144
4.6.1  定义    144
4.6.2  实例——中游的四国军棋    146
4.6.3  C#实例——文档编辑器    147
4.6.4  Java实例——装载图像    151
4.6.5  优势和缺陷    154
4.6.6  应用情景    154
4.7  Proxy Pattern(代理模式)    154
4.7.1  定义    154
4.7.2  几个现实中的实例    156
4.7.3  C#实例——数学代理    158
4.7.4  Java实例——Socket回声    160
4.7.5  优势和缺陷    165
4.7.6  应用情景    165
第5章  GoF-Behavioral Design Patterns行为型设计模式    167
5.1  Chain of Responsibility(责任链模式)    168
5.1.1  定义    168
5.1.2  现实中的实例——军情的传递    169
5.1.3  C#实例——采购分级审批    170
5.1.4  Java实例——智能大厦安全系统    174
5.1.5  优势和缺陷    178
5.1.6  应用情景    178
5.2  Command Pattern(命令模式)    179
5.2.1  定义    179
5.2.2  现实中的实例——餐馆订菜    180
5.2.3  C#实例——简单计算器    181
5.2.4  Java实例——总开关    185
5.2.5  优势和缺陷    189
5.2.6  应用情景    189
5.3  Interpreter Pattern(解释器模式)    190
5.3.1  定义    190
5.3.2  现实示例——音乐符号    192
5.3.3  C#实例——中国金钱大写转换    192
5.3.4  Java实例——自定义程序解释器    197
5.3.5  优势和缺陷    204
5.3.6  应用情景    205
5.4  Iterator Pattern(迭代器模式)    205
5.4.1  定义    205
5.4.2  现实示例——电视节目选择器    206
5.4.3  C#实例——遍历例子    207
5.4.4  Java实例——两个迭代器    211
5.4.5  优势和缺陷    213
5.4.6  应用情景    214
5.5  Mediator Pattern(中介者模式)    214
5.5.1  定义    214
5.5.2  现实示例——机场控制塔    215
5.5.3  C#实例——聊天室    216
5.5.4  Java实例——多线程通信    220
5.5.5  优势和缺陷    223
5.5.6  应用情景    223
5.6  Memento Pattern(备忘录模式)    223
5.6.1  定义    223
5.6.2  现实示例——音响均衡器    226
5.6.3  C#实例——销售目标    226
5.6.4  Java实例——多次Undo(取消)操作    231
5.6.5  优势和缺陷    236
5.6.6  应用情景    236
5.7  Observer Pattern(观察者模式)    236
5.7.1  定义    236
5.7.2  现实例子——拉登现身了    238
5.7.3  C#实例——猫和老鼠    238
5.7.4  C#实例——股票变化    241
5.7.5  Java实例——监控系统    245
5.7.6  优势和缺陷    248
5.7.7  应用情景    248
5.8  State Pattern(状态模式)    248
5.8.1  定义    248
5.8.2  现实例子——心情好坏    250
5.8.3  C#实例——账户分类    250
5.8.4  Java实例——汽车的变速档    258
5.8.5  优势和缺陷    261
5.8.6  应用情景    261
5.9  Strategy Pattern(策略模式)    261
5.9.1  定义    261
5.9.2  现实例子——去机场的策略    263
5.9.3  C#实例——排序方法    263
5.9.4  Java实例——多格式输出    266
5.9.5  优势和缺陷    272
5.9.6  应用情景    272
5.10  Template Method Pattern(模板方法模式)    272
5.10.1  定义    272
5.10.2  现实例子——厨师烹调    274
5.10.3  C#实例——数据库连接模板    274
5.10.4  Java实例——冒泡排序模板    277
5.10.5  优势和缺陷    280
5.10.6  应用情景    280
5.11  Visitor Pattern(访问者模式)    280
5.11.1  定义    280
5.11.2  现实例子——收银员收银计费    282
5.11.3  C#实例——人事评估    283
5.11.4  Java实例——维修工程师检查车辆    287
5.11.5  优势和缺陷    291
5.11.6  应用情景    291
第6章  模式的综合应用    293
6.1  Java实例——扩展的日志记录器    294
6.2  C#实例——存储分析器    298
6.3  用模式生成程序架构    316
附录1  自测题    321
附录2  自测题答案    331
参考文献    337

本目录推荐