书籍简介:
本书从.NET技术出发,结合软件项目开发的思想,从登录模块开始上手,培养学生兴趣,锤炼调试功底。本书直接介绍数据库的登录模块,引入ADO.NET;在代码不多的基础上,强化软件分层思想,引入三层架构,讲授了Web服务的使用,并结合单元测试、委托等技术,使读者可以边学习C#技术边进行软件项目模块的开发。通过学习本书,读者不仅可以了解常用的控件典型的框架,还能认识运行机制、理解框架类库、品味设计架构。
本书体系新颖、内容丰富、结构合理、文句精练,不仅可以作为高等院校计算机专业大学生计算机C#编程技术课程的教材,也可以作为培训教材,为企业招聘人员进行入职培训提供指导。
作者简介:
苏前敏、杨孜茁、张辉
出版日期:
2016年12月
章节目录:
第1章 C#与.NET Framework. 1
1.1 C#的历史… 1
1.1.1 从C到C . 1
1.1.2 Java的出现… 2
1.1.3 C#的诞生… 3
1.1.4 C#的发展历程… 5
1.2 .NET Framework. 6
1.2.1 什么是 .NET Framework. 6
1.2.2 .NET Framework的工作原理… 7
1.2.3 公共语言运行时… 9
1.2.4 .NET Framework类库… 10
1.2.5 用C#创建.NET应用程序… 11
1.3 C#软件项目开发… 14
1.3.1 需求分析… 14
1.3.2 概要设计… 15
1.3.3 详细设计… 15
1.3.4 编码… 15
1.3.5 测试… 15
1.3.6 软件交付… 16
1.3.7 维护… 16
本章小结… 16
习题… 16
第2章 登录功能…. 18
2.1 登录界面设计… 18
2.1.1 简化的用户登录界面… 18
2.1.2 新建项目… 19
2.1.3 界面设计… 20
2.2 登录模块… 23
2.2.1 模块和模块化… 23
2.2.2 登录IPO.. 23
2.2.3 登录模块代码实现… 24
2.3 界面逻辑… 24
2.3.1 事件和事件驱动… 24
2.3.2 单击事件处理过程… 25
2.3.3 消息对话框显示… 25
2.3.4 界面跳转… 25
2.3.5 启动窗体设置… 26
2.4 详细代码和程序运行… 26
2.4.1 详细代码… 26
2.4.2 程序运行界面… 27
2.5 调试… 28
2.5.1 调试概述… 28
2.5.2 Visual Studio调试… 28
2.6 打字小游戏实例… 31
2.6.1 Timer控件… 31
2.6.2 键盘事件… 32
2.6.3 随机数… 32
2.6.4 实现打字小游戏… 33
2.7 四则运算器实例… 35
2.7.1 四则运算器要求… 35
2.7.2 操作步骤… 36
本章小结… 39
习题… 39
第3章 用数据库实现操作模块…. 40
3.1 数据准备… 40
3.1.1 数据库、数据表及测试数据… 40
3.1.2 结构化查询语言SQL. 41
3.2 ADO.NET. 42
3.2.1 ADO.NET概述… 42
3.2.2 ADO.NET核心组成… 43
3.2.3 ADO.NET通俗理解… 44
3.2.4 ADO.NET命名空间… 44
3.3 登录模块… 45
3.3.1 程序步骤… 45
3.3.2 关键代码说明… 47
3.4 用户注册、删除和修改任务… 47
3.4.1 界面设计… 48
3.4.2 增删改模块… 48
3.5 用户表显示… 50
3.5.1 DataGridView控件… 50
3.5.2 DataSet和DataTable. 50
3.5.3 数据绑定过程… 51
3.6 运行界面和详细代码… 52
3.6.1 用户运行界面… 52
3.6.2 完整代码… 54
本章小结… 57
习题… 57
第4章 软件分层和三层架构…. 58
4.1 软件分层… 58
4.1.1 分层原理… 58
4.1.2 分层开发的特点和优势… 59
4.1.3 分层开发的缺点… 60
4.1.4 常用的软件分层技术… 60
4.2 三层架构… 63
4.2.1 基本原理… 63
4.2.2 三层架构的演变… 64
4.2.3 三层架构的形象对比… 65
4.3 搭建三层结构… 66
4.3.1 程序集… 6
4.3.2 搭建数据访问层… 67
4.3.3 搭建业务逻辑层… 69
4.3.4 搭建表示层… 69
4.3.5 添加各层之间的依赖关系… 69
4.4 登录案例… 70
4.4.1 编写实体类User.cs. 71
4.4.2 编写数据访问类UserService. 71
4.4.3 编写业务逻辑类
UserManager 72
4.4.4 编写表示层… 72
本章小结… 74
习题… 74
第5章 Web服务…. 75
5.1 Web服务的概念和用途… 75
5.1.1 Web服务的基本概念… 75
5.1.2 Web服务的优点… 75
5.1.3 Web服务的应用… 77
5.1.4 Web服务的调用原理… 78
5.1.5 支付宝Web服务接口… 79
5.2 Web服务实现… 80
5.2.1 用Visual Studio.NET建立Web服务… 80
5.2.2 自定义Web服务… 82
5.2.3 WinForm项目调用… 84
5.2.4 Web项目调用… 86
5.2.5 Web服务常用接口… 88
本章小结… 88
习题… 88
第6章 C#面向对象程序设计…. 89
6.1 类和对象概念… 89
6.1.1 对象… 89
6.1.2 类… 90
6.1.3 属性和字段… 90
6.1.4 方法… 91
6.1.5 对象的生命周期… 91
6.1.6 静态成员… 92
6.2 定义类… 92
6.3 定义类成员… 93
6.3.1 定义字段… 94
6.3.2 定义方法… 94
6.3.3 定义属性… 95
6.3.4 定义构造函数和析构函数… 96
6.3.5 重载… 97
6.3.6 类定义示例… 99
6.3.7 聪明猪实例… 100
6.4 继承、接口和抽象类… 103
6.4.1 继承… 103
6.4.2 接口定义… 103
6.4.3 接口和抽象类… 104
6.4.4 接口和抽象类示例… 104
6.5 常用字符串类String. 108
6.5.1 字符串与System.String. 108
6.5.2 字符串对象的不可变性… 109
6.5.3 正则字符串和原义字符串… 110
6.5.4 字符串转义序列… 110
6.5.5 格式字符串… 111
6.5.6 子字符串… 112
6.5.7 null字符串和空字符串… 113
6.5.8 使用 tringBuilder 快速创建
字符串… 115
本章小结… 115
习题… 116
第7章 委托与事件…. 117
7.1 委托… 117
7.1.1 委托的引入… 117
7.1.2 委托使用方法… 120
7.1.3 定义和使用委托实例… 120
7.1.4 组合委托… 121
7.2 事件… 122
7.2.1 事件的概念… 122
7.2.2 创建步骤… 12
7.3 实例… 125
7.3.1 委托租房… 125
7.3.2 清晨鸡叫… 128
本章小结… 130
习题… 130
第8章 图形编程和Bitmap处理基础…. 131
8.1 GDI 绘图基础… 131
8.1.1 GDI 概述… 131
8.1.2 Graphics类… 132
8.1.3 常用画图对象… 133
8.1.4 绘图程序示例… 137
8.2 Bitmap类… 141
8.2.1 Bitmap类支持的图像类型… 141
8.2.2 Bitmap类的方法… 141
8.2.3 图片处理实例… 142
本章小结… 144
习题… 144
第9章 异常处理和单元测试…. 145
9.1 异常处理概述… 145
9.1.1 为何要用异常处理… 145
9.1.2 .NET异常处理机制… 146
9.2 异常处理… 148
9.2.1 基本格式… 148
9.2.2 异常的顺序和嵌套… 151
9.2.3 thro语句和自定义
异常类… 152
9.3 单元测试… 153
9.3.1 单元测试概述… 153
9.3.2 测试用例… 154
9.4 单元测试实例… 155
9.4.1 项目准备… 155
9.4.2 单元测试向导建立测试项目… 156
9.4.3 建立测试用例… 159
9.4.4 Assert断言… 162
本章小结… 163
习题… 163
第10章 设计模式…. 164
10.1 设计模式概述… 164
10.1.1 为什么要用设计模式… 164
10.1.2 设计模式的概念… 164
10.1.3 设计模式的基本要素… 165
10.1.4 常见设计模式… 165
10.2 简单工厂模式… 167
10.2.1 简单工厂模式的概念… 167
10.2.2 实例… 168
10.3 单例模式… 171
10.3.1 单例模式的概念… 171
10.3.2 为什么要用单例模式… 171
10.3.3 剖析单例模式的实现 思路… 171
10.3.4 代码实现… 172
本章小结… 174
习题… 174
附录A C#代码规范…. 175
A.1 编程风格… 175
A.1.1 统一编程风格的意义… 175
A.1.2 变量命名规则… 175
A.1.3 函数命名规则… 176
A.1.4 类命名规则… 177
A.1.5 常见语句书写规则… 177
A.1.6 注释风格… 178
A.2 代码组织… 179
A.3 代码优化… 179
A.3.1 代码优化的意义… 179
A.3.2 函数内的代码优化… 180
A.3.3 类内的代码优化… 181
A.3.4 类之间的代码优化… 181
A.4 调试技巧… 182
A.4.1 编译时的错误… 182
A.4.2 运行时的错误… 182
A.4.3 C#常见问题… 182
附录B C#基本语法…. 183
B.1 变量和常量… 183
B.1.1 变量… 183
B.1.2 常量… 184
B.2 值类型和引用类型… 185
B.2.1 值类型… 186
B.2.2 引用类型… 188
B.3 装箱和拆箱… 190
B.4 类型转换… 190
B.5 流程控制… 191
B.5.1 条件语句… 191
B.5.2 循环… 195
B.5.3 跳转语句… 199
B.6 数组和集合… 200
B.6.1 数组… 200
B.6.2 集合… 201
参考文献…. 212
封面图: