《Windows DNA可扩展设计》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(瑞典)Sten Sundblad,(瑞典)Per Sundblad著;前导工作室译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2001
  • ISBN:7111084640
  • 页数:333 页
图书介绍:

第1章 设计新的体系结构 1

1.1 可随意选择三层或五层 1

1.1.1 用户服务层 2

1.1.2 业务服务层 2

1.1.3 数据服务层 3

1.1.4 五层而不是三层 3

1.2 使用ADO记录集 4

1.2.1 在服务器之间传送数据 5

1.2.2 使用层次化的ADO记录集 6

1.3 XML是长期的解决方案 10

第2章 可扩展性设计 12

2.1 可扩展性是关于节约资源的 12

2.2 三层服务模型 13

2.2.1 三种不同的用户界面 13

2.2.2 用户和用例需要解决方案 14

2.2.3 有限可扩展性的经典实现 16

2.2.4 在数据库中保持永久状态 17

2.2.5 如可能,将临时状态移动到客户端 18

2.3 三种类型的业务服务 20

2.3.1 外观服务 21

2.3.2 主业务服务 21

2.3.3 数据访问服务 21

2.4 Visual Basic、COM+和MTS在何处适用 22

2.4.1 在用户服务层的Visual Basic 22

2.4.2 在业务服务层使用Visual Basic 22

2.4.3 MTS和COM+的任务 23

2.5 小结 23

第3章 规则及其位置 24

3.2 8条规则 25

3.3 在何处实现规则 25

3.1 工作 25

第4章 实现规则 30

4.1 数据库 30

4.2 规则1:在国家中喂养 31

4.2.1 外关键字约束 31

4.2.2 遵循ANSI标准 32

4.2.3 作为最后防线的数据库 33

4.2.4 规则1启动 35

4.3 规则2:有且只有一个训练师 35

4.4 规则3:性别值必须有效 36

4.5 规则4:允许改变的性别 39

4.5.1 触发器方案 39

4.5.2 Visual Basic解决方案 45

4.5.3 规则4启动 48

4.6 规则5:年龄在1~15之间 50

4.7 规则6:不要删除至少已经参与一场比赛的马匹 51

4.8 规则7:名字和喂养的国家的组合必须唯一 56

4.9 规则8:在做插入操作时,要有唯一的ID 57

4.10 小结 58

第5章 对第一个业务层进行模型化 59

5.1 层和类 59

5.2 对用户服务和外观进行模型化 61

5.2.1 类图 61

5.2.2 从数据库中得到选择的马的集合 62

5.2.3 选择所显示的某匹马 64

5.2.4 把马的数据呈现在多个窗体域中 66

5.2.5 改变窗体域的内容 66

5.2.6 保存修改 66

5.2.7 删除一匹马 68

5.2.8 获得新的空记录来添加一匹新马 69

第6章 减少投入市场的时间 70

6.1 良好的配合 70

6.2.1 产生代码 71

6.2 使用测试存根 71

6.2.2 在Visual Basic中的项目 75

6.2.3 生成的代码 76

6.2.4 自己的代码 77

6.2.5 保持其清洁 82

6.3 测试窗体 83

6.3.1 获得马的列表 83

6.3.2 获得单匹马的信息 85

6.3.3 第一次设计验证 86

6.3.4 加强外观类和测试窗体 87

6.3.5 是XML又怎样? 90

第7章 将DHTML用户界面进行原型化 91

7.1 早期的动态GUI原型 91

7.2.1 RDS DataSpace对象 93

7.2.2 获得马的列表 93

7.2 一些脚本例子 93

7.2.3 选择一匹马 95

7.2.4 动画 96

7.2.5 最后的例子 97

7.3 使用脚本中独立的界面 97

7.4 返回到服务方 98

8.2.1 分配GetHorseList方法 99

8.2 分配给实体和集合类 99

8.1 重新设计外观类 99

第8章 设计主业务层 99

8.2.2 分配GetHorseByld方法 101

8.2.3 分配其他外观操作 104

8.3 将它们命名为管理者 106

8.4 重新命名包 107

第9章 使用独立的COM接口 109

9.1 控制连接 109

9.1.1 一个非常可能的方案 109

9.1.2 好的解决方案——独立COM+接口 111

9.1.3 减少代码冗余度 112

9.1.4 可随意改变实现方法 114

9.2 生成COM接口 116

9.2.1 许多接口看起来一样 116

9.2.2 COM+和MTS中允许的角色 119

9.3 将返回类型参数传递给接口 123

第10章 实现外观类 125

10.1 生成主业务和接口代码 125

10.1.1 生成接口代码 126

10.1.2 生成实体管理代码 130

10.1.3 获得Country列表 130

10.1.4 增强代码 132

10.2 移动测试存根 133

10.2.1 实现外观类 134

10.2.2 测试结果 135

10.2.3 剩下的方法 136

10.3 为组合框获取训练师列表 137

10.3.1 从外观类开始 137

10.3.2 主业务实体类 137

10.4 获得马的名字列表 139

10.4.1 修改外观类 140

10.4.2 HorseManager类 141

10.4.3 获得单匹马 142

10.5 在工作中学习 144

第11章 简化设计 145

11.1 分析接口事件 145

11.2 简化和复用COM接口 147

11.2.1 历史回顾 147

11.2.2 目前的设计状态 148

11.2.3 简化接口 149

11.2.4 增加新接口到模型中 149

11.2.5 为接口项目生成代码 150

11.2.6 移走旧的接口 152

11.3 小结 153

第12章 委托数据访问 154

12.1 为什么不让实体管理器直接访问数据 154

12.1.1 COM+和MTS事务属性规则 154

12.1.2 位置透明和性能 156

12.2 独立的COM数据访问接口 157

第13章 实现管理器和数据访问 160

13.1 为数据访问类生成代码 160

13.1.1 生成的HorseFetcher类 160

13.1.2 生成的HorseTrSrvcs类 161

13.2 获取马匹列表 162

13.2.1 移植测试存根代码 162

13.2.2 调用GetListForNamePattern方法 163

13.2.3 测试结果——仍然使用测试存根代码 164

13.2.4 用真正的数据库访问代码替换测试存根 165

13.2.5 测试实际的数据库访问代码 166

13.3 获取马匹数据 166

13.3.1 获取驯马师和国家的数据 167

13.3.2 再次测试 168

13.4 存储马匹数据 168

13.5 删除(或作废)马匹数据 170

第14章 使用MTS 174

14.1 上下文对象 174

14.2 实现IObjectControl接口 175

14.2.1 CanBePooled方法 175

14.2.2 Deactivate方法 176

14.2.3 Activate方法 176

14.3 使组件适合于MTS 177

14.3.1 实现IObjectControl 177

14.3.2 调用SetComplete和SetAbort方法 179

14.3.3 创建其他MTS对象 180

14.3.4 设置事务属性 181

14.4 数据环境 182

14.5 友元和新关键字 182

14.6 注意事项 183

第15章 COM+概览 185

15.1 COM+的组件服务 185

15.1.1 队列组件 186

15.1.2 松散配对事件 191

15.1.3 对象池 192

15.2 COM+的基本思路 192

15.3 COM+的一些特性 192

15.3.1 实现继承 192

15.3.2 声明开发 193

15.3.3 COM+目录和组件服务插件 194

15.4 关于COM+的最终一般性思考 198

15.3.4 补偿资源管理器 198

15.5 Windows NT4.0上的COM+ 199

第16章 为应用程序实例创建COM+组件 200

16.1 IObjectControl接口 200

16.1.1 MTS中的IObjectControl接口 200

16.1.2 COM+中的IObjectControl接口 200

16.1.3 COM+中的上下文对象 203

16.1.4 方法级的安全角色 207

16.2 小结 208

第17章 确保良好的数据库性能与可扩展性 210

17.1 重用查询计划 210

17.1.1 缓存计划的存储过程 210

17.1.2 缓存和重用SQL语句 211

17.1.3 学习经验 215

17.2 使用存储过程 215

第18章 其他用例与外观 224

18.1.1 执行者 225

18.1 一些例子 225

18.1.2 用例 226

18.1.3 为用例服务的外观类 228

18.1.4 外观类构成主业务类的需求 230

18.2 设计主业务类 234

18.3 框架 239

第19章 对层次记录集的赞成和反对 242

19.1 关于窗体和编码的更多内容 243

19.1.1 跑道的组合框 244

19.1.2 赛马日期列表框 246

19.1.3 赛马网格 250

19.2 联系父子记录的三种不同方式 255

19.2.1 通过参数进行联系 255

19.2.2 域与域的关联 264

19.2.3 使用特殊的筛选器关联域与域 266

19.3 多于两层的层次结构 267

19.4 其他一些问题 268

19.5 小结 268

第20章 XML概览 270

20.1 XML特性 270

20.1.1 XML是已经确立的Web标准 271

20.1.2 XML是一种标记语言 271

20.1.3 XML文档的结构 271

20.1.4 XML是严格的而HTML不是 272

20.1.5 定义良好的文档 273

20.1.6 XML区分大小写 274

20.1.7 XML是很繁琐的 274

20.2 使用文档类型定义语言来定义模式 275

20.2.1 外部和内部DTD规范 275

20.2.2 在 Web页中显示文档 276

20.2.3 使XML文档无效 280

20.3 用XML数据定义模式 281

20.3.1 XML数据模式是XML文档 282

20.3.2 无效的XML代码 284

20.4 用XML和XML DOM编写脚本 285

20.6 使用XSL来表示XML文档 290

20.6.1 使用第1个XSL格式页 292

20.6.2 使用第2个XSL格式页 294

20.6.3 同一XSL格式页中的多个模板 296

20.7 最后一个通用的XML例子 297

第21章 有ADO 2.5支持并为开发组件服务的XML 300

21.1 ADO 2.5中的XML支持 301

21.1.1 把简单记录集转换成XML 301

21.1.2 转换多行记录集 305

21.1.3 把层次记录集转换到XML 307

21.2 SQL Server 2000和XML 308

21.3 简单对象访问协议 310

22.1 外关键字约束 311

第22章 业务规则 311

22.1.1 试图突破外关键字约束 312

22.1.2 检查外关键字错误 313

22.2 检验约束 313

22.3 唯一性约束 314

22.4 列标识 315

23.1 复杂事务 319

23.1.1 两种情况 319

第23章 最后几个问题 319

23.1.2 特殊事务管理器 326

23.2 COM+和MTS打包 327

23.2.1 易于打包 328

23.2.2 资源对象和真实业务对象 331

23.3 重访状态化模型 331

23.4 库包及库应用程序 332

23.5 连接字符串 333

23.6 新闻组服务 333