当前位置:首页 > 工业技术
C#设计模式
C#设计模式

C#设计模式PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:(美)库珀编著;叶斌译
  • 出 版 社:北京:科学出版社
  • 出版年份:2011
  • ISBN:9787030308153
  • 页数:380 页
图书介绍:本书主要介绍如何用最常见的设计模式编写C#程序。全书分为四个部分,首先介绍了C#语言和面向对象程序设计的一般原则,可作为C#程序设计的快速入门教程;然后分别讲述了创建型模式、结构型模式和行为型模式。每一类设计模式又包括若干种具体模式,共有23种。在介绍每种模式时,给出了一个或多个应用该模式的示例,以便于读者理解。此外,每一章还提供了UML图,用以说明类之间的关系。本书适用于计算机及相关专业的本科生和研究生,对于软件开发人员也是一本很好的参考书。
《C#设计模式》目录

第1部分 面向对象的C#编程 2

第1章 什么是设计模式 2

1.1 定义设计模式 4

1.2 学习进程 5

1.3 学习设计模式 6

1.4 关于面向对象方法的说明 6

1.5 C#设计模式 7

1.6 本书的内容组织 7

第2章 C#语法 9

2.1 数据类型 10

2.2 数值与串之间的转换 12

2.3 声明多个变量 12

2.4 数值常量 13

2.5 字符常量 13

2.6 变量 14

2.7 用于初始化的连等号 14

2.8 一个简单的C#程序 15

2.9 算术运算符 16

2.10 递增和递减运算符 17

2.11 合并运算语句和赋值语句 17

2.12 C#中的判断 18

2.13 比较运算符 20

2.14 组合条件 20

2.15 最常见的错误 21

2.16 switch语句 21

2.17 C#的注释 22

2.18 有争议的三元运算符 23

2.19 C#中的循环语句 23

2.20 while循环 23

2.21 do-while语句 24

2.22 for循环 24

2.23 在for循环中根据需要声明变量 25

2.24 for循环语句中的逗号 25

2.25 C#与C的不同之处 26

2.26 C#与Java的不同之处 26

2.27 小结 27

第3章 编写C#版的Windows程序 28

3.1 C#中的对象 28

3.2 受管语言和垃圾收集 29

3.3 C#中的类和命名空间 29

3.4 构建C#应用 30

3.5 用C#编写的最简单的窗口程序 31

3.6 Windows控件 34

3.6.1 标签(Label) 35

3.6.2 文本框(TextBox) 35

3.6.3 复选框(CheckBox) 36

3.6.4 按钮(Button) 36

3.6.5 单选按钮(Radio Button) 36

3.6.6 列表框(ListBox)和组合框(ComboBox) 37

3.6.7 项目集合(Item Collection) 37

3.6.8 菜单(Menu) 38

3.6.9 工具提示(ToolTip) 38

3.7 Windows控件程序 39

3.8 小结 41

3.9 配套光盘上的程序 41

第4章 在C#中使用类和对象 42

4.1 使用类的用意所在 42

4.2 一个简单的温度转换程序 42

4.3 构建一个Temperature类 44

4.4 把判断放入到Temperature类中 46

4.5 使用格式化类和值转换类 48

4.6 串的分词器类 50

4.7 作为对象的类 52

4.8 类包含 54

4.9 初始化 55

4.10 类和属性 55

4.11 C#编程风格 58

4.12 委派 58

4.13 索引器 61

4.14 运算符重载 62

4.15 小结 63

4.16 配套光盘上的程序 63

第5章 继承 64

5.1 构造函数 64

5.2 C#中的绘图和图形 65

5.3 使用继承 67

5.4 命名空间 68

5.5 公有的、私有的和受保护的 70

5.6 重载 71

5.7 virtual和override关键字 72

5.8 在派生类中重写方法 72

5.9 使用new关键字来替换方法 73

5.10 重写Windows控件 74

5.11 接口 75

5.12 抽象类 76

5.13 比较接口和抽象类 79

5.14 小结 80

5.15 配套光盘上的程序 80

第6章 UML图 81

6.1 继承 82

6.2 接口 84

6.3 组合 84

6.4 注解 85

6.5 WithClass的UML图 86

6.6 C#工程文件 86

第7章 C#中的数组、文件和异常 87

7.1 数组 87

7.2 集合对象 88

7.2.1 ArrayList 88

7.2.2 Hashtable 89

7.2.3 SortedList 90

7.3 异常 90

7.4 多重异常 92

7.5 抛出异常 92

7.6 文件处理 93

7.6.1 File对象 93

7.6.2 读取文本文件 94

7.6.3 写入文本文件 94

7.7 文件处理中的异常 94

7.8 检测文件结束 95

7.9 一个csFile类 96

7.10 配套光盘上的程序 98

第2部分 创建型模式 101

第8章 简单工厂模式 101

8.1 简单工厂是如何工作的 101

8.2 示例代码 102

8.3 两个派生类 103

8.4 构建简单工厂 104

8.5 数学计算中的工厂模式 106

8.6 小结 108

8.7 思考问题 109

8.8 配套光盘上的程序 109

第9章 工厂方法 110

9.1 Swimmer类 113

9.2 Event类 113

9.3 StraightSeeding类 114

9.4 我们的排位程序 115

9.5 其他工厂类 116

9.6 什么时候使用工厂方法 117

9.7 思考问题 117

9.8 配套光盘上的程序 117

第10章 抽象工厂模式 118

10.1 GarderMaker工厂 118

10.1.1 图像框 121

10.1.2 处理单选按钮和按钮的事件 122

10.2 增加更多的类 123

10.3 抽象工厂的效果 123

10.4 思考问题 124

10.5 配套光盘上的程序 124

第11章 单件模式 125

11.1 使用静态方法来创建单件 125

11.2 异常和实例 126

11.3 抛出异常 127

11.4 创建类的一个实例 127

11.5 提供到单件的全局访问点 128

11.6 返回同一个实例 129

11.7 单件模式的其他效果 130

11.8 配套光盘上的程序 130

第12章 生成器模式 131

12.1 一个投资追踪器 132

12.1.1 股票工厂 134

12.1.2 CheckChoice类 135

12.1.3 ListboxChoice类 136

12.2 在列表框控件中使用项目集合 138

12.2.1 制作数据图表 139

12.2.2 最终得到的选择方式 139

12.3 生成器模式的效果 140

12.4 思考问题 141

12.5 配套光盘上的程序 141

第13章 原型模式 142

13.1 C#中的克隆 143

13.2 使用原型 143

13.3 克隆类 148

13.4 使用原型模式 150

13.5 原型管理器 155

13.6 原型模式的效果 155

13.7 思考问题 156

13.8 配套光盘上的程序 156

13.9 创建型模式小结 157

第3部分 结构型模式 160

第14章 适配器模式 160

14.1 在列表之间移动数据 160

14.2 构造一个适配器 162

14.3 使用DataGrid 164

14.4 使用TreeView 167

14.5 类适配器 168

14.6 双向适配器 170

14.7 C#中对象适配器和类适配器的对比 170

14.8 可插式适配器 171

14.9 思考问题 171

14.10 配套光盘上的程序 171

第15章 桥接模式 172

15.1 Bridger接口 173

15.2 VisList类 175

15.3 类图 176

15.4 对桥接的扩展 177

15.5 用作桥接的Windows窗体 180

15.6 桥接模式的效果 181

15.7 思考问题 181

15.8 配套光盘上的程序 181

第16章 组合模式 182

16.1 组合的一个实现 183

16.2 计算工资 184

16.3 Employee类 184

16.4 Boss类 186

16.5 构建雇员的树形组织结构 188

16.6 自我提升 190

16.7 双向链表 191

16.8 组合模式的效果 192

16.9 简单组合 192

16.10 .NET中的组合 193

16.11 其他的实现问题 193

16.12 思考问题 194

16.13 配套光盘上的程序 194

第17章 装饰器模式 195

17.1 装饰Cool Button 195

17.2 在装饰器中处理事件 197

17.2.1 布局考虑 198

17.2.2 控件的大小和位置 198

17.3 多个装饰器 199

17.4 非可视化的装饰器 202

17.5 装饰器、适配器和组合 202

17.6 装饰器模式的效果 202

17.7 思考问题 203

17.8 配套光盘上的程序 203

第18章 外观模式 204

18.1 什么是数据库 204

18.2 从数据库中提取数据 206

18.3 各种数据库 207

18.4 ODBC 208

18.5 数据库结构 208

18.6 使用ADO.NET 209

18.6.1 连接数据库 209

18.6.2 从数据库表中读取数据 210

18.6.3 执行查询 211

18.6.4 删除表的内容 211

18.7 使用ADO.NET将行添加到数据库表中 212

18.8 构建外观类 213

18.9 构造ADO.NET的外观 215

18.10 为每张表创建类 220

18.11 构建Price表 223

18.12 加载数据库表 227

18.13 最终的应用程序 228

18.14 哪些类构成了外观 229

18.15 外观的效果 230

18.16 思考问题 230

18.17 配套光盘上的程序 230

第19章 享元模式 231

19.1 讨论 232

19.2 示例代码 232

19.2.1 类图 236

19.2.2 选择文件夹 237

19.3 处理鼠标和绘图事件 239

19.4 享元在C#中的应用 240

19.5 可共享的对象 240

19.6 写复制(Copy-on-Write)对象 241

19.7 思考问题 241

19.8 配套光盘上的程序 241

第20章 代理模式 242

20.1 示例代码 243

20.2 C#中的代理 245

20.3 写复制(Copy-on-Write) 246

20.4 与相关模式的比较 246

20.5 思考问题 246

20.6 配套光盘上的程序 246

20.7 结构型模式小结 247

第4部分 行为型模式 249

第21章 职责链 249

21.1 适用性 250

21.2 示例代码 251

21.3 列表框 254

21.4 编写帮助系统程序 256

21.5 链抑或树 260

21.6 各种各样的请求 261

21.7 C#中的例子 262

21.8 职责链 262

21.9 思考问题 263

21.10 配套光盘上的程序 263

第22章 命令模式 264

22.1 动机 264

22.2 命令对象 265

22.3 构建命令对象 266

22.4 命令模式的效果 268

22.5 CommandHolder接口 268

22.6 提供撤销操作 272

22.7 思考问题 278

22.8 配套光盘上的程序 278

第23章 解释器模式 279

23.1 动机 279

23.2 适用性 280

23.3 一个简单的报表例子 280

23.4 解释语言 282

23.5 用在解析中的对象 283

23.6 归约解析栈 287

23.7 实现解释器模式 288

23.8 解释器模式的效果 292

23.9 思考问题 293

23.10 配套光盘上的程序 293

第24章 迭代器模式 294

24.1 动机 294

24.2 迭代器示例代码 295

24.3 过滤型迭代器 297

24.4 记录所属俱乐部 300

24.5 迭代器模式的效果 301

24.6 配套光盘上的程序 302

第25章 中介者模式 303

25.1 一个示例系统 303

25.2 控件之间的交互 304

25.3 示例代码 306

25.4 中介者和命令对象 310

25.5 中介者模式的效果 311

25.6 单一接口的中介者 311

25.7 实现问题 312

25.8 配套光盘上的程序 312

第26章 备忘录模式 313

26.1 动机 313

26.2 实现 314

26.3 示例代码 314

26.4 用户界面中的命令对象 321

26.5 处理鼠标和绘图事件 323

26.6 备忘录的效果 324

26.7 思考问题 325

26.8 配套光盘上的程序 325

第27章 观察者模式 326

27.1 监视颜色的改变 327

27.2 发送给传播者的消息 331

27.3 观察者模式的效果 331

27.4 配套光盘上的程序 332

第28章 状态模式 333

28.1 示例代码 333

28.2 在状态之间切换 338

28.3 Mediator如何与StateManager交互 339

28.4 处理Fill状态 343

28.5 处理撤销列表 344

28.6 VisRectangle类和VisCircle类 347

28.7 中介者和万能类 349

28.8 状态模式的效果 350

28.9 状态转换 350

28.10 思考问题 351

28.11 配套光盘上的程序 351

第29章 策略模式 352

29.1 动机 352

29.2 示例代码 353

29.3 Context 354

29.4 程序的命令 355

29.5 线状图和柱状图策略 355

29.6 用C#绘制图表 356

29.6.1 制作柱状图 357

29.6.2 制作线状图 357

29.7 策略模式的效果 359

29.8 配套光盘上的程序 359

第30章 模板方法模式 360

30.1 动机 360

30.2 模板类中的各种方法 362

30.3 示例代码 363

30.3.1 绘制普通三角形 365

30.3.2 绘制等腰三角形 365

30.4 三角形绘制程序 366

30.5 模板和回调 368

30.6 效果小结 368

30.7 配套光盘上的程序 369

第31章 访问者模式 370

31.1 动机 370

31.2 何时使用访问者模式 372

31.3 示例代码 372

31.4 访问类 374

31.5 访问多种类型的类 374

31.6 上司也是雇员 376

31.7 访问者的全包式操作 377

31.8 双重分派 378

31.9 我们为什么这样做 379

31.10 遍历一系列的类 379

31.11 访问者模式的效果 379

31.12 思考问题 380

31.13 配套光盘上的程序 380

相关图书
作者其它书籍
返回顶部