注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计.NETC#设计模式

C#设计模式

C#设计模式

定 价:¥33.00

作 者: (美)James W.Cooper著;张志华,刘云鹏等译
出版社: 电子工业出版社
丛编项:
标 签: C#

购买这本书可以去


ISBN: 9787505389793 出版时间: 2003-08-01 包装: 平装
开本: 26cm 页数: 257 字数:  

内容简介

  本书主要介绍如何用最常见的设计模式编写C#程序。全书分为四个部分,首先介绍了C#语言和面向对象程序设计的一般原则,可作为C#程序设计的快速入门教程;然后分别讲述了创建型模式、结构型模式和行为型模式。每一类设计模式又包括若干种具体模式,共有23种。在介绍每种模式时,给出了一个或多个应用该模式的示例,以便于理解,且这些示例都是能完全运行的程序,包含在随书附带的光盘中。此外,每一章还提供了UML图,用以说明类之间的关系。本书适用于计算机及相关专业的本科生和研究生,对于软件开发人员也是一本很好的参考书。

作者简介

  IBMThomasJ.Watson研究中心信息管理和检索领域的研究人员,拥有多项专利。发表过大量科技论文,并编著了14本书,包括“VisualBasicDesignPatterns”和“JavaDesignPatterns”。同时也是“JavaPro”杂志的固定专栏作家。

图书目录

第一部分  C#面向对象程序设计
第1章  设计模式概述  2
1.1  定义设计模式  3
1.2  学习过程  4
1.3  学习设计模式  4
1.4  关于面向对象方法  4
1.5  C#设计模式  5
1.6  本书的组织结构  5
第2章  C#语言的语法  6
2.1  数据类型  6
2.2  数值与字符串间的转换  7
2.3  声明多个变量  8
2.4  数值型常量  8
2.5  字符常量  8
2.6  变量      8
2.7  用多个等号初始化  9
2.8  一个简单的C#程序  9
2.9  算术运算符  10
2.10  递增运算符和递减运算符  10
2.11  将算术语句和赋值语句合并  11
2.12  C#中的判断  11
2.13  比较运算符  12
2.14  条件合并  12
2.15  最常见的错误  13
2.16  switch语句  13
2.17  C#注释  13
2.18  有争议的三元运算符  14
2.19  C#的循环语句  14
2.20  while循环  14
2.21  do-while语句  14
2.22  for循环  15
2.23  在for循环中用到变量时再声明  15
2.24  for循环语句中的逗号  15
2.25  C#与C的区别  16
2.26  C#与Java的区别  16
2.27  小结  17
第3章  用C#编写Windows程序  18
3.1  C#中的对象  18
3.2  受管语言和垃圾收集  18
3.3  C#中的类和名字空间  18
3.4  构建一个C#应用程序  19
3.5  用C#编写一个最简单的 Windows程序  20
3.6  Windows控件  22
3.7  Windows controls程序  25
3.8  小结  26
3.9  随书附带光盘中的程序  26
第4章  在C#中使用类和对象  27
4.1  关于类  27
4.2  一个简单的温度转换程序  27
4.3  构造一个Temperature类  28
4.4  将判断放在Temperature类里  30
4.5  使用类完成格式化和数值转换工作  31
4.6  分析字符串的类  33
4.7  类与对象  34
4.8  类包含  35
4.9  初始化  36
4.10  类和属性  36
4.11  C#的程序设计风格  38
4.12  代理  38
4.13  索引器  40
4.14  运算符重载  41
4.15  小结  41
4.16  随书附带光盘中的程序  41
第5章  继承  42
5.1  构造函数  42
5.2  C#中的绘图和Graphics 对象  42
5.3  使用继承  44
5.4  名字空间  44
5.5  公有的、私有的和保护的  46
5.6  重载  46
5.7  virtual和override关键字  47
5.8  在派生类里覆盖方法  47
5.9  使用new替换方法  48
5.10  覆盖Windows控件  48
5.11  接口  50
5.12  抽象类  50
5.13  接口和抽象类的比较  52
5.14  小结  53
5.15  随书附带光盘中的程序  53
第6章  UML图  54
6.1  继承  55
6.2  接口  56
6.3  组合  56
6.4  图注  57
6.5  用WithClass绘制UML图  57
6.6  C#项目文件  58
第7章  C#中的数组、文件和异常  59
7.1  数组  59
7.2  集合对象  59
7.3  异常  61
7.4  多个异常  62
7.5  抛出异常  62
7.6  文件处理  62
7.7  文件处理中的异常  63
7.8  检测文件末尾  64
7.9  csFile类  64
7.10  随书附带光盘中的程序  66
第二部分  创建型模式
第8章  简单工厂模式  68
8.1  简单工厂模式如何工作  68
8.2  示例代码  68
8.3  两个派生类  69
8.4  构造简单工厂  69
8.5  数学计算中的工厂模式  71
8.6  小结  73
8.7  思考题  73
8.8  随书附带光盘中的程序  73
第9章  工厂方法模式  74
9.1  Swimmer类  76
9.2  Event类  76
9.3  直接排位  77
9.4  排位程序  77
9.5  其他工厂  78
9.6  何时使用工厂方法  78
9.7  思考题  79
9.8  随书附带光盘中的程序  79
第10章  抽象工厂模式  80
10.1  花园规划工厂  80
10.2  添加更多的类  83
10.3  抽象工厂的效果  84
10.4  思考题  84
10.5  随书附带光盘中的程序   84
第11章  单件模式  85
11.1  使用静态方法创建单件  85
11.2  异常与实例  86
11.3  抛出异常  86
11.4  创建一个类实例  86
11.5  提供一个单件的全局访问点  87
11.6  单件模式的其他效果  87
11.7  随书附带光盘中的程序  87
第12章  生成器模式  88
12.1  一个投资跟踪程序  88
12.2  使用ListBox控件中的Items集合  92
12.3  生成器模式的效果  94
12.4  思考题  95
12.5  随书附带光盘中的程序  95
第13章  原型模式  96
13.1  C#中的克隆  96
13.2  使用原型  96
13.3  克隆类  99
13.4  使用原型模式  101
13.5  原型管理器  105
13.6  原型模式的效果  105
13.7  思考题  105
13.8  随书附带光盘中的程序  105
13.9  创建型模式小结  105
第三部分  结构型模式
第14章  适配器模式  108
14.1  在列表之间移动数据  108
14.2  创建一个适配器  109
14.3  使用DataGrid  110
14.4  使用TreeView  112
14.5  类适配器  113
14.6  双向适配器  115
14.7  C#中对象适配器与类适配器的对比  115
14.8  可插入的适配器  115
14.9  思考题  115
14.10  随书附带光盘中的程序  115
第15章  桥接模式  116
15.1  桥接接口  116
15.2  VisList类  118
15.3  类图  119
15.4  扩展Bridge  119
15.5  Windows窗体充当Bridge  121
15.6  桥接模式的效果  122
15.7  思考题  122
15.8  随书附带光盘中的程序  122
第16章  组合模式  123
16.1  一个组合的实现  123
16.2  计算薪水  124
16.3  Employee类  124
16.4  Boss类  126
16.5  构造Employee树  127
16.6  自我升职  128
16.7  双向链表  128
16.8  组合模式的效果  129
16.9  一个简单的组合  130
16.10  .NET中的组合  130
16.11  其他实现问题  130
16.12  思考题  130
16.13  随书附带光盘中的程序  130
第17章  装饰模式  131
17.1  装饰一个CoolButton  131
17.2  处理Decorator中的事件  132
17.3  多个Decorator  134
17.4  非可视化的Decorator  135
17.5  Decorator,Adapter和Composite  135
17.6  装饰模式的效果  136
17.7  思考题  136
17.8  随书附带光盘中的程序   136
第18章  外观模式  137
18.1  什么是数据库  137
18.2  从数据库中取出数据  138
18.3  数据库的种类  138
18.4  ODBC  139
18.5  数据库的结构  139
18.6  使用ADO.NET  139
18.7  使用ADO.NET向数据库表添加数据行  141
18.8  构建外观模式的各个类  142
18.9  创建ADO.NET的Facade  143
18.10  为每张表创建自己的类  147
18.11  构建Prices表  149
18.12  填写数据库表  151
18.13  最终的应用程序  152
18.14  Facade的构成  152
18.15  Facade的效果  153
18.16  思考题  153
18.17  随书附带光盘中的程序  153
第19章  享元模式  154
19.1  讨论  154
19.2  示例代码  155
19.3  处理鼠标事件和绘图事件  159
19.4  C#中Flyweight的应用  160
19.5  共享对象  160
19.6  Copy-on-Write对象  160
19.7  思考题  160
19.8  随书附带光盘中的程序   160
第20章  代理模式  161
20.1  示例代码  161
20.2  C#中的Proxy  163
20.3  Copy-on-Write  163
20.4  相关模式之间的比较  163
20.5  思考题  163
20.6  随书附带光盘中的程序  163
20.7  结构型模式小结  164
第四部分  行为型模式
第21章  职责链  166
21.1  适用范围  166
21.2  示例代码  167
21.3  列表框  169
21.4  设计一个帮助系统  170
21.5  链的树形结构  173
21.6  请求的种类  174
21.7  C#中的例子  174
21.8  职责链  175
21.9  思考题  175
21.10  随书附带光盘中的程序  175
第22章  命令模式  176
22.1  动机  176
22.2  命令对象  176
22.3  构建Command对象  177
22.4  命令模式的效果  179
22.5  CommandHolder接口  179
22.6  提供Undo操作  181
22.7  思考题  185
22.8  随书附带光盘中的程序  185
第23章  解释器模式  186
23.1  动机  186
23.2  适用性  186
23.3  一个简单的报表例子  186
23.4  解释语言  187
23.5  用于分析的对象  188
23.6  归约分析栈  191
23.7  实现解释器模式  192
23.8  解释器模式的效果  195
23.9  思考题  195
23.10  随书附带光盘中的程序  196
第24章  迭代器模式  197
24.1  动机  197
24.2  迭代器示例代码  197
24.3  过滤迭代器  199
24.4  记录俱乐部  200
24.5  迭代器模式的效果  201
24.6  随书附带光盘中的程序  202
第25章  中介者模式  203
25.1  一个例子  203
25.2  控件间的相互协作  204
25.3  示例代码  204
25.4  Mediator对象与Command对象  207
25.5  中介者模式的效果  207
25.6  单接口的中介者  208
25.7  实现问题  209
25.8  随书附带光盘中的程序  209
第26章  备忘录模式  210
26.1  动机  210
26.2  实现  210
26.3  示例代码  210
26.4  用户界面中的命令对象  215
26.5  处理鼠标事件和Paint事件  216
26.6  备忘录模式的效果  217
26.7  思考题  218
26.8  随书附带光盘中的程序  218
第27章  观察者模式  219
27.1  观察颜色变化  219
27.2  发给观察者的消息  221
27.3  观察者模式的效果  223
27.4  随书附带光盘中的程序  223
第28章  状态模式  224
28.1  示例代码  224
28.2  状态之间的转换  227
28.3  Mediator如何与StateManager互相协作  228
28.4  处理Fill状态  231
28.5  处理Undo列表  231
28.6  VisRectangle类和VisCircle类  233
28.7  Mediator类和“万能类”  235
28.8  状态模式的效果  235
28.9  状态转换  235
28.10  思考题  235
28.11  随书附带光盘中的程序  236
第29章  策略模式  237
29.1  动机  237
29.2  示例代码  237
29.3  Context类  238
29.4  程序中的Command对象  238
29.5  线状图和条形图策略  239
29.6  用C#绘制图形  239
29.7  策略模式的效果  242
29.8  随书附带光盘中的程序  242
第30章  模板方法模式  243
30.1  动机  243
30.2  Template类中的方法种类  244
30.3  示例代码  245
30.4  三角形绘图程序  247
30.5  模板与反向调用  248
30.6  小结与效果  248
30.7  随书附带光盘中的程序  249
第31章  访问者模式  250
31.1  动机  250
31.2  何时使用访问者模式  251
31.3  示例代码  251
31.4  访问类  252
31.5  访问几个类  253
31.6  Boss也是Employee  254
31.7  Visitor的杂物箱操作  255
31.8  双分派  256
31.9  为什么这样做  256
31.10  访问一系列的类  256
31.11  访问者模式的效果  256
31.12  思考题  257
31.13  随书附带光盘中的程序  257
参考文献  258

本目录推荐