《Microsoft Visual Basic 6.0 高级编程 第2版》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:(英国)TMS(国际)有限公司著;北京博彦科技发展有限公司译
  • 出 版 社:北京:北京大学出版社
  • 出版年份:2000
  • ISBN:7301041888
  • 页数:664 页
图书介绍:随着VisualBasic6.0的发布,VisualBasic产品家族已经完全适应今后分布式企业开发的发展需要。为了满足那些希望推动这种工具达到新的极限的中高级VisualBasic程序员的需求,著名的TheMandelbrotSet(International)Limited公司的专家们再次创作了这本权威的、高水平VisualBasic参考书。本书深入研究了功能性的各个层次,以阐述和转化您每天在专业程序开发方面付出的努力。通过学习本书内容,您将大开眼界,并可以获得广泛的开发方面的专家级问题解决技巧。基中包括:设计分布式商业对象;客户/服各器开发;Internet/Intranet程序设计和集成;2000年问题和VisualBasic问题;增强型数据访问;可实现的程序设计;错误处理;调试和测试;组件程序设计。从本书中您还将发现项目管理、软件工程,以及质量管理的全新方法。作者生动便不规范的编写风格目的在于拓宽您的思路,并讲述在代公司内使用VisualBasic的方法。如果您准备在企业开发方面更上一层楼话,那就赶快阅读《MicrosoftVisualBasic6.0高级编程》(第2版)吧!

前言 1

第一章 发生错误就下地狱 2

序言 3

1.1 提示1:错误是如此反复,尽可能地模仿VB的错误处理方案 4

1.2 提示2:在源代码中使用行号 10

1.3 提示3:因为返回值将被忽略,所以应尽可能产生异常 12

1.4 提示4:自动记录关键的MsgBox错误 15

1.5 提示5:在每个例程中都有一个错误处理程序 17

1.6 提示6:编写有效的错误日志(如果可能,记录到集中的位置) 19

1.7 提示7:使用断言 25

1.9 提示9:跟踪堆栈 26

1.8 提示8:不要盲目改进错误处理程序 26

1.10 提示10:使用ROOS(Resource Only Object Server) 27

1.11 提示11:用您自己的对象来替换有用的内部对象 27

1.12 提示12:检查DLL版本错误 32

1.13 提示13:尽可能使用Microsoft系统信息(MSINFO32.EXE) 35

1.14 提示14:像事务处理那样对待错误处理 39

1.15 提示15:不要测试自己的软件或者编写自己的测试计划 40

1.16 提示16:加强测试应用程序 40

1.17 提示17:使用自动测试工具 41

1.18 提示18:考虑错误值 42

1.19 提示19:加强Visual Basic的类型检查 43

1.21 提示21:在资源文件中保存错误文本 55

1.20 提示20:用TypeLib或Enum定义常量 55

1.22 提示22:总是在(您所构造的)控件和组件中处理错误 58

1.23 提示23:使用符号调试信息 61

第二章 关心商业(对象) 64

2.1 数据访问层 66

2.1.1 数据访问层的细节 66

2.1.2 记录集 67

2.1.3 检索记录集 68

2.1.4 串行化记录集 69

2.1.5 锁定记录集 70

2.1.6 更新记录集 70

2.1.7 同步化记录集 70

2.2.1 工厂-工作者模式 73

2.2 工厂-工作者对象 73

2.2.2 工厂对象 75

2.2.3 暂留 80

2.2.4 删除 81

2.2.5 了解记录集 82

2.2.6 确定工厂参数 83

2.2.7 创建工作者 84

2.2.8 商业对象浏览器 88

2.2.9 小结 89

2.3 操作对象 89

2.3.1 操作对象接口 90

2.3.2 操作中的事务 91

2.4 客户程序 92

2.3.3 小结 92

2.4.1 小结 93

第三章 在我面前看到的IIS是一个模板 94

3.1 Web应用程序是什么? 96

3.1.1 IIS还是ASP? 96

3.2 使用Visual Basic 6开发Web应用程序 97

3.2.1 基础:免费的素材 97

3.2.2 建立自己的主页 100

3.2.3 将您的主页扩展到客户 102

3.2.4 将您的主页转化为商业用途 104

3.3 结论 112

第四章 使用Variant进行程序设计 114

4.1 Variant概述 115

4.2 内部结构 116

4.3 使用Variant代替简单数据类型 117

4.3.1 性能不是问题 117

4.3.2 内存也不成问题 118

4.3.3 类型安全性 118

4.3.4 灵活性 124

4.3.5 保护性代码编写 125

4.3.6 使用Variant作为普通数字数据类型 126

4.4 使用变量代替对象 128

4.5 其他variant子类型 129

4.5.1 Empty和Null 129

4.5.2 数组 130

4.5.3 用户定义类型 135

第五章 在Windows CE环境下开发应用程序 140

5.1 Windows CE是什么? 142

5.1.1 适用的读者 143

5.1.2 构建Windows CE设备 145

5.2 内部揭示 147

5.2.1 支持的体系结构 147

5.2.2 Win32 API 148

5.2.3 对象存储 148

5.2.4 动态同步 150

5.2.5 进程和线程 150

5.2.6 实时功能 152

5.2.7 开发环境 154

5.3 Windows CE及IT部门 155

5.4 Visual Basic开发 156

5.4.1 开发环境 156

5.4.2 Windows CE应用程序设计思想 157

5.4.3 开发第一个Windows CE应用程序 158

5.4.4 设计中要考虑的一般事项 159

5.4.5 错误处理 172

5.4.6 Windows CE桌面模拟器 173

5.4.7 应用程序的测试及调试 175

5.4.8 配置应用程序 176

5.4.9 使用COM DLL扩展Visual Basic 177

第六章 停留在控制阶段 178

6.1 昂贵的故事 180

6.2.1 漫游指导 181

6.2 我们要实现什么? 181

6.3 策略问题 183

6.3.1 优先权:四球魔术表演 183

6.3.2 进步可能更危险 184

6.3.3 按部起舞 185

6.4 态度问题 187

6.4.1 吞下旁边的犀牛 187

6.4.2 循环往复 188

6.4.3 重返校园 189

6.4.4 还需更多的功课 190

6.4.5 谨小慎微 191

6.4.6 跳出圈子 191

6.5 着手进行工作 192

6.5.1 飞行测试 193

6.5.2 如何健全您的程序? 197

6.5.3 查看存储过程的内幕 199

6.5.4 这儿有龙 200

6.5.5 有害的类型强制 204

6.5.6 捕获错误 208

6.5.7 声明意图 212

6.5.8 ActiveX文档 216

6.6 一些Visual Basic 6工具 217

6.6.1 注册三种Sourcerer 217

6.6.2 断言自身:Assertion Sourcerer 217

6.6.3 大小问题:Metrics Sourcerer 219

6.6.4 黑匣子:Instrumentation Sourcerer 220

6.7 总结 221

6.8 需要的读物文献 221

第七章 细节 222

7.1 关于编译器 223

7.1.1 p代码简介 224

7.1.2 生成代码 225

7.1.3 记录器 228

7.1.4 连接器 230

7.1.5 使用编译器最优化代码 232

7.1.6 高级最优化 233

7.1.7 记录器代码 238

7.2.2 使用混合语言编程 242

7.2.1 选择合适的编程人员 242

7.2 有关最优化的资料 242

7.2.3 控制代码的速度 243

7.2.4 多动脑筋 243

7.2.5 抓住要点 243

7.2.6 “借用”代码 244

7.2.7 利用所有解决问题的技巧 246

7.2.8 使用烟雾和反射 248

7.3 关于对象、类型和数据结构 249

7.3.1 Visual Basic是面向对象的语言 249

7.3.2 使用集合来扩展类型系统 254

7.3.3 添加VarType 255

7.3.4 指针 259

7.4 关于类型库 265

7.4.1 删除Declare语句 266

7.5 关于Smartie 272

7.6 其他资料 275

7.6.1 通过外出吃饭理解软件开发 275

第八章 Visual Basic程序员指南:如何正确表示日期 278

8.1 历法简介 279

8.2 如何用Visual Basic正确表示日期? 280

8.2.1 Date数据类型 280

8.2.2 在Visual Basic中使用日期数据 281

8.3 指定日期 288

8.3.1 有时您必须变得严格 302

8.4.2 日期输入 305

8.4.1 显示日期信息 305

8.4 公众面前的日期:用户界面问题 305

8.5 从哪里得到日期:存储问题 308

8.5.1 数据库的操作 308

8.6 什么时候可以继续:移植问题 310

8.6.1 当改动老代码时需要注意些什么 311

8.6.2 测试 313

8.6.3 测试数据和条件 313

8.6.4 改变您的系统日期 315

8.6.5 考虑第三方工具 316

8.7 找到日期的其他背景材料 316

8.8 结论 322

第九章 至少编译是成功的! 324

9.2.1 单元/组件测试 328

9.1 测试目的 328

9.2 正式的测试周期 328

9.2.2 综合测试 329

9.2.3 系统测试 330

9.2.4 用户接受测试 330

9.2.5 回归测试 331

9.2.6 代码复审 331

9.3 测试Visual Basic代码 332

9.3.1 与其他开发人员合作 332

9.3.2 在运行时测试 333

9.3.3 定期创建Build 333

9.3.5 决定放置测试代码的位置 334

9.3.4 在编写代码的同时写测试脚本 334

9.3.6 在测试过程中确保源代码的覆盖率 335

9.3.7 理解测试数据 335

9.3.8 获得有关的用户 335

9.3.9 跟踪错误 336

9.4 测试计划 337

9.5 测试脚本 338

9.5.1 占位程序和驱动程序 338

9.6 计划代码组件 339

9.6.1 功能规范 340

9.6.2 测试脚本规范 342

9.7 性能测试 344

9.8 准备适当的测试环境 344

9.8.1 测试机器配置 345

9.9 警告 347

第十章 使用已装入的基础代码开始新工程 348

10.1 为什么使用基础代码? 349

10.2 模板中的内容 351

10.2.1 帮助程序函数 352

10.2.2 通用窗体 352

10.2.3 AetiveX组件 352

10.2.4 子分类 352

10.3 子分类函数和子例程 353

10.3.1 子分类的益处 353

10.3.2 有关子分类的问题 356

10.3.3 子分类对象 357

10.4 通用窗体 358

10.5 隐藏API调用 359

10.6 注册表工具 360

10.7 资源文件 361

10.8 自定义控件 362

1O.9 文档编制 362

10.9.1 对象浏览器(Object Browser) 363

10.9.2 帮助文件 363

10.9.3 HTML 363

10.10 构建您自己的基础代码 364

10.10.1 从哪里开始? 364

lO.10.4 商业实例 365

10.10.3 源代码还是可执行代码? 365

lO.10.2 谁来构建基础代码? 365

10.11 更改基础代码 366

10.12 模板 366

10.13 小结 367

第十一章 用Visual Studio进行混合语言编程 368

11.1 什么是混合语言编程? 369

11.1.1 典型的NLP情形 370

11.1.2 使用MLP有些什么要求? 371

11.1.3 在Windows中进行MLP的可能性 371

11.1.4 混合语言编程方法 376

11.1.5 使用COM及ActiveX与使用DLL 378

11.2 使用单一入口 383

11.3.1 连接实例 385

11.3 利用COM取代常规DLL入口 385

11.3.2 从Visual B++中调用C++DLL 387

11.3.3 将Visual B++对象传递至Visual C++ 388

11.3.4 使用ActiveX控件进行MLP 390

11.3.5 在汇编语言中混合 392

11.3.6 其他语言 392

11.3.7 定义组件版本 393

11.4 结论 395

第十二章 数据库 396

12.1 一旦做,就一次做好,然后将之抛到脑后 397

12.1.1 数据 398

12.1.2 层和数据 400

12.1.3 取回数据 401

12.1.4 构建两层体系结构 402

12.2 关于客户,服务器交互作用的三种方法 407

12.2.1 典型的客户/服务器计算 407

12.2.2 日志/临时条目 408

12.2.3 多状态/事务/会话服务器 409

12.2.4 锁定角度解锁 409

12.2.5 查找到数百条信息时可能引发的问题 410

12.2.6 何时打开和关闭连接 412

12.2.7 决定事务作用域的放置位置 413

12.2.8 获取层 414

12.2.9 关于SQL 416

12.2.11 层和数据 419

12.2.10 静态查找数据 419

12.2.12 对象、状态和数据:Buxom Server 420

12.2.13 依然不能确定哪些数据是对象所关注的? 423

12.2.14 数据——对象系统的“货币” 423

12.2.15 远程传输 424

12.3 将所有事情组件化 433

12.4 结束语 433

第十三章 定向程序设计 434

13.1 窗口管理 436

13.1.1 模式的还是非模式的? 437

13.1.2 一个通用模式类 439

13.1.3 扩展CFormAttributes类 440

13.2 复杂性处理 444

13.2.1 状态处理方面的技巧 446

13.2.2 使用FSM构建GUI模型 447

13.2.3 简洁的结束 449

13.2.4 实现FSM 450

13.2.5 数据驱动编码 458

13.3 尘埃落定之后 467

第十四章 我上星期编写过那个函数吗? 468

14.1 影响代码重用性的问题 469

14.1.1 最终期限的压力 470

14.1.2 关于当前技术的知识 470

14.1.3 开发队伍的素质 470

14.2 重用的商业情形 471

14.3 重用的关键 472

14.4 有效地满足重用的要求 473

14.4.1 使用对象的代码重用 474

14.4.2 将窗体作为可重用的组件 485

14.4.3 创建您自己的控件 492

14.4.4 使用ROOS 504

14.5 程序员重用的问题 511

14.5.1 做几个假定 513

14.5.2 开发耦合策略 513

14.5.3 组功能 518

14.5.4 为您的代码编写文档 518

14.5.5 改善您的习惯 518

第十五章 如何蒙起眼睛玩30个球 520

15.1 Visual Basic的质量危机? 522

15.2 风险管理 523

15.2.1 技术基础结构 524

15.2.2 商业环境 525

15.2.3 更改管理 525

15.3 成功的企业开发的关键因素 525

15.3.1 坚持全面项目管理 525

15.3.2 弄清冒风险的原因 527

15.3.3 要了解您从哪里来 527

15.3.4 要了解您在哪里 528

15.3.5 建立委托并了解用户 529

15.3.6 了解技术 530

15.3.8 获取过程 531

15.3.7 创建合理的管理结构 531

15.3.9 选择方法 532

15.4 方案研究 533

15.4.1 过程和人员 535

15.5 项目启动 537

15.5.1 技能需求 538

15.5.2 基础结构需求 538

15.6 初期阶段 539

15.6.1 垂直划分意味着完成百分之八十就交付百分之八十 539

15.6.2 统一思想,端正态度 540

15.6.3 敢于选择真正具有较高素质的人员 540

15.6.4 着眼大局,运筹于未然 540

15.7 保证质量的方法 541

15.7.2 讲授基本原理 543

15.7.1 精益求精 543

15.7.3 给工作人员分配任务 544

15.8 为什么要进行原型化? 546

15.9 使用Pathfinder项目创建基础 547

15.10 检验技术体系结构 548

15.10.1 概念的检验 550

15.11 集中设计 550

15.11.1 什么是设计? 550

15.11.2 什么不是设计? 551

15.11.3 开发设计模式 552

15.11.4 基准驱动设计 553

15.13 重用的投资 554

15.12 了解对象 554

15.14 寻找合适的工具 555

15.15 配置管理:尽管去做! 555

15.16 文档编制 556

15.16.1 功能/需求说明 556

15.16.2 设计说明 556

15.16.3 注释优良的代码 556

15.16.4 测试计划 557

15.17 测试 557

15.17.1 破坏测试 557

15.17.2 窗口设计测试 557

15.17.3 定位测试 558

15.18 创建计划 559

15.17.4 功能测试 559

15.19 2000年问题 560

15.20 结论 561

第十六章 Visual Basic中的辅助特性 562

16.1 残疾指的是什么? 563

16.2 辅助特性开发的基本内容 564

16.2.1 使用键盘 564

16.2.2 颜色 567

16.2.3 声音 571

16.2.4 大小 572

16.3 高级辅助特性 577

16.3.1 Windows版本 577

16.3.2 SystemParametersInfo 578

16.3.3 GetSystemMetrics 581

16.3.4 FlashWindow 582

16.4 Microsoft Active Accessibility 583

16.4.1 为什么应使用Active Accessibility? 584

16.4.2 设置您的工程 585

16.4.3 检索辅助特性信息 585

16.4.4 接下去讨论什么? 591

16.5 使辅助特性成为您开发过程的一部分 591

16.5.1 计划阶段 591

16.5.2 设计阶段 591

16.6 法律材料 592

16.5.5 反馈 592

16.5.4 测试阶段 592

16.5.3 编程阶段 592

16.7 更多信息 593

第十七章 聘用三部曲 594

17.1 从何处开始? 595

17.2 第1步:发现优秀的开发人员 596

17.2.1 应该寻找什么类型的人员? 596

17.2.2 规定岗位说明 598

17.2.3 薪水研究 600

17.2.4 寻找合适的人员 600

17.3 第2步:吸收优秀的开发人员 601

17.3.1 初期筛选过程 601

17.3.2 面试 602

17.3.3 测试 604

17.3.4 聘用 612

17.4 第3步:留住真才实学的开发人员 613

17.4.1 人力资源管理:至关重要 613

17.4.2 职业发展 614

17.4.3 2000年问题的影响 625

17.4.4 有人离开时怎么办? 625

附录A 编码约定 629

附录B 第十七章中技术测试的答案示范 645

附录C TMS开发者的框架 653

附录D Visual DateScope 2000和VBA2000 657

附录E 与TMS保持同步 661

附录F 关于TMS公司 663