第1部分 面向对象编程与VB.NET基础知识
第1章 V8.NET面向对象的系统开发
1.1 理解OO开发和VB.NET
1.1.1 面向对象编程
1.1.2 Microsoft.NET架构和VB.NET
1.1.3 面向对象的分析和设计
1.2 解面向对象的概念
1.2.1 对象、属性和方法
1.2.2 对象交互和消息
1.2.3 封装和信息隐藏
1.2.4 类、实例和关联
1.2.5 继承和多态
1.3 认识OO开发的优点
1.3.1 对象更加自然
1.3.2 各类对象都能重用
1.4 学习OO开发
1.4.1 三层设计介绍
1.4.2 第1部分:面向对象和VB.NET的基本原理
1.4.3 第2部分:创建问题域类
1.4.4 第3部分:创建GUI类
1.4.5 第4部分 创建数据访问类
1.4.6 第5部分:创建三层应用程序
1.5 本章小结
1.6 复习题
1.7 讨论题
1.8 项目
第2章 Visual Studio.NET开发环境
2.1 Visual Studio.NET开发环境
2.1.1 开始VB.NET编程
2.1.2 MDE
2.1.3 解Start Page窗口
2.2 使用VB.NET创建工程
2.2.1 理解VB.NET组织程序的方式
2.2.2 使用文本编辑器
2.2.3 修改文本编辑器设置
2.2.4 重命名Modulel.vb
2.2.5 设置启动对象
2.3 编译和运行VB.NET程序
2.4 使用可视化窗体设计器
2.4.1 创建Windows应用程序
2.4.2 自定义窗体外观
2.4.3 在窗体上增加控件
2.5 调试工具
2.5.1 打开调试器
2.5.2 设置断点
2.6 帮助工具
2.6.1 获取帮助
2.6.2 Help菜单上的Contents选项
2.6.3 Help菜单上的Index选项
2.6.4 Help菜单上的Search选项
2.6.5 Help菜单上的Dynamic Help选项
2.6.6 上下文帮助
2.7 本章小结
2.8 复习题
2.9 讨论题
2.10 项目
第3章 VB.NET编程基础
3.1 VB.NET引言
3.2 编写VB.NET模块
3.2.1 使用VB.NET的变量和数据类型
3.2.2 声明和初始化变量
3.2.3 改变数据类型
3.2.4 使用常量
3.2.5 使用引用变量
3.2.6 创建VB.NET的变量模块
3.3 VB.NET的数学运算功能
3.4 编写条件控制语句
3.4.1 If语句
3.4.3 Select Case语句
3.5 循环结构
3.5.1 Do While循环
3.5.2 Do Until循环
3.5.3 过检查循环
3.5.4 For Next循环
3.5.5 嵌套循环'
3.6 声明和访问数组
3.6.1 一维数组
3.6.2 多维数组
3.7 本章小结
3.8 复匀题
3.9 讨论题
3.10 项目
第4章 使用VB.NET的类编程
4.1 使用VB.NET的命名空间和类
4.2 使用String类
4.3 创建String数组
4.4 使用Array List类
4.5 使用日期
4.6 格式化数值输出
4.7 使用MessageBox类
4.8 显示窗体
4.9 本章小结
4.10 复习题
4.11 讨论题
4.12 项目
第5章 面向对象的分析与设计
5.1 学习OOA和OOD
5.2 解统一建模语言
5.2.1 建立并说明用例图
5.2.2 建立并说明类图
5.2.3 建立并说明序列图
5.3 OO开发中的三层设计
5.4 Bradshaw Marina个案研究介绍
5.4.1 Bradshaw Marina的背景
5.4.2 确定Bradshaw用例和情形
5.4.3 确定Bradshaw问题域类
5.4.4 建立Bradshaw序列图
5.5 本章小结
5.6 复习题
5.7 讨论题
5.8 项目
第2部分 开发问题域类
第6章 编写问题域类定义
6.1 VB.NET命名惯例
6.2 开发PD类定义
6.3 定义属性
6.4 编写方法和特性
6.5 测试PD类
6.6 创建实例
6.7 编写构造函数方法
6.8 编写TELLABOUTSELF方法
6.9 编写作为窗体的测试器类
6.10 本章小结
6.11 复习题
6.12 讨论题
6.13 项目
第7章 在问题域类中添加功能
7.1 编写一个新的问题域类定义
7.2 创建自定义方法
7.3 编写类变量和类方法
7.4 编写重载方法
7.4.1 重载构造函数
7.4.2 重载自定义方法
7.5 异常处理
7.5.1 slipId的数据验证代码
7.5.2 slipWidth的数据验证代码
7.5.3 连接异常
7.6 本章小结
7.7 复习题
7.8 讨论题
7.9 项目
第8章 理解继承和接口
8.1 实现Boat的一般/特殊层次结构
8.1.1 使用Windows窗体测试Boat超类
8.1.2 使用Inherits关键字创建Sailboat子类
8.1.3 测试Sailboat子类
8.1.4 添加第二个子类--Powerboat
8.2 解抽象类和最终类
8.2.1 使用MustInherit关键字
8.2.2 使用NotInheritable关键字
8.3 重写超类方法
8.3.1 重写Boat TellAboutSelf方法
8.3.2 重写和调用超类方法
8.3.3 测试两个Method-Overriding方法
8.3.4 重写、多态和动态绑定
8.4 理解私有访问和保护访问
8.5 介绍Lease子类和抽象方法
8.5.1 向Lease中添加一个抽象方法
8.5.2 实现AnnualLease子类
8.5.3 实现DailyLease子类
8.5.4 测试AnnualLease类和DailyLease类
8.6 解并使用接口
8.6.1 创建一个VB.NET接口
8.6.2 实现更多的接口
8.7 使用自定义异常
8.7.1 定义LeasePaymentException
8.7.2 抛出一个自定义异常
8.7.3 测试LeasePaymentException
8.8 了解Object类和继承
8.9 本章小结
8.10 思考题
8.11 讨论题
8.12 项目
第9章 实现关联关系
9.1 在Bradshaw Marina类图中确认关联关系
9.2 在一对一关系中关联VB.NET类
9.2.1 修改Customer类
9.2.2 修改Boat类
9.3 在Boat类中添加功能
9.4 Dock和Slip的关联:一对多的关联关系
9.4.1 介绍Dock类
9.4.2 使Slip类与Dock相关联
9.4.3 测试Dock与Slip的关联关系
9.5 把顾客Boat和Customer类添加到Slip例子中
9.6 创建并使用关联类--Lease
9.7 本章小结
9.8 复习题
9.9 讨论题
9.10 项目
第3部分 开发图形用户接口(GUI)类
第10章 VB.NET GUI组件一览
10.1 介绍VB.NET中的GUI类
10.2 理解VB.NET中生成的代码
10.3 处理VB.NET中的事件
10.4 使用附加的GUI控件
10.4.1 回顾Form、Button和Label
10.4.2 使用文本框和组合框
10.4.3 使用复选框和单选按钮
10.4.4 使用组群框和面板
10.4.5 使用列表框和复选列表框
10.4.6 使用树形查看器和树形节点
10.4.7 使用时间拾取器
10.4.8 使用标签控件和标签页
10.4.9 使用主菜单和菜单项
10.5 本章小结
10.6 复习题
10.7 讨论题
10.8 项目
第11章 使用问题域类的多个窗体
11.1 开发与PD类交互的GUI类
11.1.1 向生成的代码添加变量
11.1.2 处理事件
11.2 模拟与数据库的交互作用
11.2.1 创建顾客数组列表
11.2.2 处理事件
11.2.3 查找顾客
11.2.4 更新顾客
11.3 开发与多个PD类交互的GUI类
11.3.1 处理事件
11.3.2 编写ClearForm方法
11.3.3 编写btnAdd_Click方法
11.3.4 编写AddSailboat方法
11.3.5 编写AddPowerboat方法
11.4 在集成系统里操作多个窗体
11.4.1 模拟数据访问类
11.4.2 理解CustomerData类
11.4.3 集成多个窗体
11.4.4 设计主菜单
11.4.5 查找顾客
11.4.6 添加顾客
11.5 开发导航PD关联关系的GUI类
11.5.1 理解CustomerAndBoatData类
11.5.2 设计GUI顺序
11.5.3 添加顾客
11.5.4 添加船
11.5.5 查找顾客和船
11.6 本章小结
11.7 复习题
11.8 讨论题
11.9 项目
第12章 Web窗体、HTML和ASP.NET
12.1 了解Internet和Web基本原理
12.1.1 静态和动态的Web页面
12.1.2 安装IIS服务器
12.1.3 处理Web目录
12.2 回顾HTML基础
12.2.1 研究HTML文档
12.2.2 处理图像和超链接
12.3 使用HTML窗体
12.3.1 使用窗体控件
12.3.2 传统的ASP Web的开发
12.4 使用ASP.NET开发Web页面
12.4.1 从内容中分离代码
12.4.2 使用HTML、HTML服务器控件和ASP.NET服务器控件
12.4.3 了解ASP.NET页面事件生存周期
12.5 创建ASP.NET Web应用程序
12.6 创建ASP.NET调查应用程序
12.6.1 使用后台编码窗口
12.6.2 创建结果Web页面
12.6.3 使用ASP.NET验证控件
12.6.4 向调查Web页面添加验证控件
12.6.5 使用带有PD类的ASP.NET
12.6.6 移动Web应用程序并且解决Web问题
12.7 本章小结
12.8 复习题
12.9 讨论题
12.10 项目
第4部分 开发数据访问类
第13章 数据访问类和持久性介绍
13.1 研究VB.NET输入与输出
13.1.1 顺序文件处理
13.1.2 StreamWriter与StreamReader的一般格式
13.2 添加工具栏和对话框控件
13.2.1 ImageList和工具栏控件
13.2.2 工具栏控件
13.2.3 确定工具栏按钮的单击
13.2.4 向应用程序中添加对话框
13.2.5 保存文件的对话框
13.2.6 OpenFile对话框
13.2.7 添加颜色对话框
13.2.8 FontDialog控件
13.3 对象的持久性
13.4 设计数据访问类
13.4.1 数据访问方法
13.4.2 查找顾客
13.4.3 添加顾客
13.4.4 修改顾客
13.4.5 删除顾客
13.4.6 附加的数据访问方法
13.5 与数据访问类通信
13.5.1 查找顾客
13.5.2 添加顾客
13.5.3 修改顾客
13.5.4 删除顾客
13.5.5 附加问题域方法
13.5.6 实现顺序文件的永久性
13.5.7 初始化方法
13.5.8 中断方法
13.5.9 查找方法
13.5.10 AddNew方法
13.5.11 更新方法
13.5.12 删除方法
13.5.13 GetAll方法
13.5.14 DuplicateException和NotFoundException类
13.5.15 实现顺序文件的CustomerDA测试
13.5.16 用对象串行化实现持久性
13.6 在VB.NET中运用关系数据库
13.6.1 结构化查询语言
13.6.2 在VB.NET中访问DBMS
13.6.3 VB.NET的数据库访问类
13.6.4 VB.NET和DBMS的例子
13.6.5 用数据库实现对象持久性
13.6.6 初始化方法
13.6.7 中断方法
13.6.8 查找方法
13.6.9 添加方法
13.6.10 修改方法
13.6.11 删除方法
13.6.12 GetAll方法
13.6.13 用数据库实现的CustomerDA的测试
13.7 本章小结
13.8 复习题
13.9 讨论题
13.10 项目
第14章 创建更为复杂的数据库应用程序
14.1 实现数据库应用程序的一对一关系
14.1.1 理解CustomerAndBoat数据库
14.1.2 使用SQL连接数据库中的表
14.1.3 在数据库中建立公共连接
14.1.4 修改Customer类
14.1.5 介绍BoatDA类
14.1.6 理解BoatDA类的Initialize和Terminate方法
14.1.7 理解BoatDA类的Find和GetAll方法
14.1.8 理解BoatDA类的AddNew方法
14.1.9 理解BoatDA类的Update和Delete方法
14.1.10 修改船只类,使之与BoatDA类协同工作
14.1.11 修改CustomerDA类
14.1.12 理解CustomerDA类的Find和GetAll方法
14.1.13 理解CustomerDA类的AddNew方法
14.1.14 理解CustomerDA类的Delete和Update方法
14.1.15 测试新的CustomerAndBoatDatabase应用程序
14.2 在数据库应用程序中实现一对多的关系
14.2.1 理解DockAndSlipDatabase中的数据表
14.2.2 建立DockAndSlipDatabase数据库的公共连接
14.2.3 修改Dock和Slip类
14.2.4 介绍DockDA类
14.2.5 理解DockDA类的Find方法
14.2.6 理解DockDA类的GetAll方法
14.2.7 测试DockAndSlipDatabase应用程序
14.3 应用双亲-孩子(分等级的)数据集关系
14.4 在数据库应用程序中实现关联类
14.4.1 理解CustomerLeaseSlipDatabase中的数据表
14.4.2 建立CustomerLeaseSlipDatabase数据库的连接
14.4.3 修改Customer类
14.4.4 修改Lease和AnnualLease类
14.4.5 修改Slip类
14.4.6 介绍SlipDA类
14.4.7 介绍AnnualLeaseDA类
14.4.8 理解AnnualLeaseDA类的Find方法
14.4.9 理解AnnualLeaseDA类的AddNew方法
14.4.10 测试CustomerLeaseSlip数据库应用程序
14.5 本章小结
14.6 复习题
14.7 讨论题
14.8 项目
第5部分 部署三层应用程序
第15章 装配三层Windows应用程序
15.1 回顾三层设计
15.2 结合PD类、DA类和GUI
15.2.1 回顾Customer问题域类
15.2.2 回顾Customer数据访问类
15.2.3 修改FindCustomer GUI
15.3 使用多个GUI并向数据库中添加实例
15.3.1 回顾MainMenu GUI
15.3.2 回顾AddCustomer GUI
15.3.3 修改FindCustomer GUI
15.4 使用带有问题域类的GUI
15.4.1 回顾第14章中的Customer、Boat PD和DA类
15.4.2 修改MainMenu GUI
15.4.3 修改FindCustomer GUI
15.4.4 回顾第11章中的AddCustomer GUI
15.4.5 修改AddBoat GUI
15.5 本章小结
15.6 复习题
15.7 讨论题
15.8 项目
第16章 装配三层Web窗体应用程序
16.1 理解Web应用程序的"状态"概念
16.1.1 维持状态
16.1.2 理解Application状态和Application对象
16.1.3 理解Session状态和Session对象
16.1.4 使用Cookies
16.1. 5 利用ASP.NET会话状态控件
16.2 创建ASP.NET用户控件
16.3 利用数据绑定技术
16.3.1 将数据绑定到下拉列表
16.3.2 理解DataGrid控件
16.4 为Bradshaw Marina开发一个Web应用程序
16.4.1 Bradshaw Marina Web站点设计
16.4.2 设计Bradshaw Marina主页
16.4.3 研究默认Web窗体的代码
16.4.4 设计AddCustomerBoat Web窗体
16.4.5 AddCustomerBoat Web窗体的代码
16.4.6 设计Startup Web窗体
16.4.7 设计AboutBradshawMarina Web窗体
16.5 介绍XML和Web服务
16.5.1 XML应用程序例子
16.5.2 理解Web服务
16.5.3 为Bradshaw Marina开发Web服务
16.6 本章小结
16.7 复习题
16.8 讨论题
16.9 项目
术语表