新書推薦:
《
我从何来:自我的心理学探问
》
售價:HK$
119.9
《
失败:1891—1900 清王朝的变革、战争与排外
》
售價:HK$
85.8
《
送你一匹马(“我不求深刻,只求简单。”看三毛如何拒绝内耗,为自己而活)
》
售價:HK$
64.9
《
秦汉史讲义
》
售價:HK$
151.8
《
万千心理·我的精神分析之道:复杂的俄狄浦斯及其他议题
》
售價:HK$
104.5
《
荷马:伊利亚特(英文)-西方人文经典影印21
》
售價:HK$
107.8
《
我的心理医生是只猫
》
售價:HK$
49.5
《
巴拉吉预言
》
售價:HK$
74.8
|
編輯推薦: |
《C#技术与应用开发》书中实例及其相关技术具有较强的代表性、实用性、指导性。案例概念清晰、编码规范、解析详细。
|
內容簡介: |
全书共分为两篇:基础理论篇和应用开发篇。基础理论篇比较全面地介绍了C#面向对象程序设计语言的基础理论,内容包括.NET框架与Visual Studio 2012开发工具概述、C#语法基础知识、C#面向对象编程基础、文件处理系统、.NET Framework框架与常用类库、基于ADO.NET的数据库编程和Windows窗体应用程序开发。 基础理论部分不仅适用于C#的初学者,更适用于有一定C#语言基础的读者,使之能够更好地掌握和熟练的应用C#的基础理论,进行系统设计与应用开发更得心应手。 应用开发篇结合选课与成绩管理系统,详细介绍了基于C#的三层CS模式的系统设计与开发方法及数据库编程技术,内容包括三层体系结构及其基于C#的实现、数据库设计方法与步骤、基于三层CS模式的选课及成绩管理系统和选课与成绩管理系统几个典型模块的设计及其在C#中的实现。 书中实例及其相关技术具有较强的代表性、实用性、指导性。案例概念清晰,编码规范,解析详细。 本书主要面向C#工程应用与项目开发人员,可以作为基于C#的项目开发的培训教材,也可供C#程序设计语言自学人员参考,还可以作为高等院校C#语言程序设计课程的参考书。本书的基础篇也可以作为C#语言程序设计课程的教材内容。
|
目錄:
|
基础理论篇
第1章 Microsoft.NET与C#简介 2
1.1 Visual Studio.NET与.NET Framework简介 2
1.1.1 Visual Studio.NET概述 2
1.1.2 .NET Framework概述 3
1.2 C#简介 4
1.2.1 C#的定义 4
1.2.2 C#与框架类库中重要的命名空间 4
1.2.3 C#程序的基本结构 5
1.3 Visual Studio 2012集成开发环境 7
1.3.1 Visual Studio 2012的运行环境与安装 7
1.3.2 Visual Studio 2012的启动与环境设置 9
1.3.3 项目、文件模板 10
1.3.4 Visual Studio 2012 IDE概述 11
1.3.5 工具栏与工具箱 12
1.3.6 修改字体与颜色 13
1.4 用C#创建.NET应用程序 14
1.4.1 控制台应用程序的创建、编译、运行 14
1.4.2 Windows窗体应用程序的创建、编译、测试、运行 16
1.4.3 ASP.NET应用程序概述 21
第2章 C#语法基础知识 23
2.1 C#的数据类型 23
2.1.1 值类型 23
2.1.2 引用类型 25
2.2 关键字与标识符 28
2.2.1 关键字 28
2.2.2 标识符的分类与命名规则 43
2.3 常量、变量 44
2.3.1 常量 44
2.3.2 变量及其定义与初始化 45
2.3.3 变量的类型、作用域与生存周期 46
2.4 各种运算符及其表达式 49
2.4.1 C#语言运算符的几个要素及分类 49
2.4.2 括号运算符([]、)和成员运算符(.)与域成员运算符(::) 50
2.4.3 算术运算符与算术表达式 51
2.4.4 关系运算符与关系表达式 52
2.4.5 逻辑运算符与逻辑表达式、逻辑运算的特殊规则 53
2.4.6 赋值运算符与赋值表达式 58
2.4.7 条件运算符与条件运算表达式 60
2.4.8 自增量()、自减量运算(??)、负号运算符(?)及其表达式 61
2.4.9 逗号运算符、求字节运算符、指针运算符、其他运算符 63
2.4.10 位逻辑运算与位移运算符及其表达式 64
2.4.11 运算符的优先级 66
2.5 数据类型转化 68
2.5.1 数据类型的自动转化及其转化规则 68
2.5.2 显式类型转化 70
2.5.3 数值型与string类型之间的转化 73
2.5.4 使用Convert类的方法进行各种类型之间的强制转化 76
2.5.5 字符串与字符数组之间的转化 77
2.6 流程控制语句 78
2.6.1 C#语句分类 78
2.6.2 if语句 81
2.6.3 switch语句 83
2.6.4 循环结构概述与循环实现的原理 86
2.6.5 while循环语句 86
2.6.6 dowhile循环语句 87
2.6.7 for循环语句 87
2.6.8 foreach循环语句 88
2.6.9 循环的嵌套及几种循环的相互转化 89
2.6.10 break语句、continue语句和return语句 90
2.6.11 using语句及其使用 93
2.7 集合与数据处理 96
2.7.1 数组 96
2.7.2 ArrayList 101
2.7.3 泛型 104
2.8 C#语言中的异常及其处理 106
2.8.1 C#语言的异常处理概述 107
2.8.2 使用trycatchfinally处理异常 107
第3章 C#面向对象编程 114
3.1 类与对象 114
3.1.1 类的结构与定义 114
3.1.2 对象的定义 115
3.2 类的成员 116
3.2.1 数据成员与函数成员 116
3.2.2 静态成员与实例成员 118
3.2.3 属性 119
3.2.4 构造函数与析构函数 121
3.3 类的方法与函数 123
3.3.1 方法和函数的定义、调用 123
3.3.2 静态方法和实例方法 124
3.3.3 方法的参数与传递机制 126
3.3.4 方法的返回值 131
3.3.5 方法重载 131
3.3.6 C#的Main函数 132
3.3.7 C#消息对话框类MessageBox及方法show 132
3.4 this指针 134
3.5 类的继承性与多态性 136
3.5.1 类的继承性 136
3.5.2 类的多态性 142
3.6 接口 145
第4章 .NET Framework常用类库 148
4.1 文件系统与IO流 148
4.1.1 软件系统环境与System.Environment类 148
4.1.2 System.IO命名空间常用的类 151
4.1.3 Directory类和DirectoryInfo类与文件夹操作 152
4.1.4 File类和FileInfo类与文件操作 155
4.1.5 文本文件的基本操作 160
4.1.6 二进制文件的基本操作 166
4.1.7 通过内存流读写显示图片文件 169
4.2 System.Console类 171
4.2.1 Console类与基本输入输出 171
4.2.2 Console类与格式化控制台输出 172
4.2.3 Console类与数值数据的格式化输出 172
4.3 字符串、日期时间、数值处理类 173
4.3.1 字符串处理 173
4.3.2 日期时间处理 177
4.3.3 数值处理与随机数 178
4.4 正则表达式 179
4.4.1 正则表达式类 180
4.4.2 正则表达式基本语法(规则)与实例 181
4.4.3 常用的表达式属性设置 189
第5章 Windows窗体应用程序与控件 191
5.1 Windows应用程序 191
5.1.1 Windows应用程序的创建 191
5.1.2 窗体程序文件Form1.cs 192
5.1.3 程序入口文件Program.cs 193
5.1.4 窗体及控件与属性设计文件Form1.Designer.cs 194
5.1.5 C#中的Form类 195
5.1.6 Form类的常用属性 195
5.1.7 Form类的常用事件和方法 197
5.1.8 为窗体添加控件并布局 198
5.1.9 添加控件事件处理程序 200
5.2 多窗体与多文档应用程序设计 202
5.2.1 多窗体程序设计 202
5.2.2 MDI应用程序设计 202
5.3 常用Windows窗体控件 204
5.3.1 Label、LinkLabel控件 204
5.3.2 TextBox控件 206
5.3.3 RichTextBox控件 209
5.3.4 按钮控件(ButtonRadioButton) 211
5.3.5 容器控件(GroupPanel) 212
5.3.6 多页容器控件TabControl 213
5.3.7 NumericUpDown控件 216
5.3.8 CheckBox控件 218
5.3.9 ListBox控件 219
5.3.10 CheckedListBox控件 224
5.3.11 ComboBox控件 227
5.3.12 PictureBox控件的使用 234
5.3.13 ImageList控件 235
5.3.14 Timer控件 236
5.3.15 ProgressBar控件和TrackBar控件 237
5.4 消息显示对话框和通用对话框控件 239
5.4.1 消息对话框 239
5.4.2 OpenFileDialog控件 243
5.4.3 SaveFileDialog控件 245
5.4.4 FontDialog控件 247
5.4.5 ColorDialog控件 249
5.4.6 PrintDocument打印控件 250
5.4.7 PageSetupDialog控件 251
5.4.8 PrintPreviewDialog控件 252
5.4.9 PrintDialog打印控件 252
5.4.10 通用控件实例解析 253
5.5 其他控件(MenuStripToolsStrip) 262
5.5.1 菜单(MenuStrip)控件 262
5.5.2 工具栏(ToolStrip)控件和状态栏(StatusStrip)控件 267
5.6 常用事件处理 270
5.6.1 键盘事件 270
5.6.2 鼠标事件处理 270
5.7 控件的布局与基本操作 271
5.7.1 调整控件对象的位置和大小 271
5.7.2 控件对象的对齐 272
5.7.3 控件对象的间距调整 272
第6章 ADO.NET与数据库编程 273
6.1 ADO.NET简介 273
6.1.1 ADO.NET体系结构 273
6.1.2 ADO.NET对象模型 274
6.2 ADO.NET数据提供程序与命名空间 275
6.2.1 ADO.NET数据提供程序概述 275
6.2.2 C#程序中使用命名空间 276
6.2.3 ADO.NET访问数据库的过程 278
6.3 Connection类(对象)与数据库连接 278
6.3.1 Connection对象的常用属性与方法 278
6.3.2 Connection对象的连接字符串 279
6.3.3 Connection对象的常用方法 281
6.4 Command(命令)对象与查询及其实现 283
6.4.1 Command对象常用属性 283
6.4.2 Command对象常用方法 284
6.4.3 SQL命令的参数化和格式化 290
6.4.4 SqlCommand对象与命令的参数传递 292
6.4.5 操作其他数据源所需名称空间 299
6.5 DataReader对象与数据获取 300
6.5.1 DataReader对象及其常用属性 300
6.5.2 DataReader类的常用属性和方法 300
6.5.3 DataReader对象访问数据库实例 304
6.6 DataAdapter类(对象)与数据库操作 306
6.6.1 DataAdapter对象的常用属性 306
6.6.2 DataAdapter对象的常用方法 307
6.6.3 SqlDataAdapter获取数据库记录应用实例 309
6.7 DataSet与DataTable类与数据库操作 310
6.7.1 DataSet对象概述 311
6.7.2 DataSet对象模型 312
6.7.3 DataTable类 313
6.7.4 DataColumn和DataRow类与对象 315
6.7.5 DataSet类、DataTable类、DataColumn类、DataRow
类综合应用实例 317
6.8 数据显示控件(DataGridView) 321
6.8.1 DataGridView控件简介 321
6.8.2 DataGridView控件常用属性 322
6.8.3 DataGridView控件的常用方法 323
6.8.4 DataGridView控件的常用事件 324
6.8.5 DataGridView控件常用属性、方法、事件的常规操作 325
6.8.6 DataAdapter、DataSet类与DataGridView控件更新数据库应用实例 336
应用开发篇
第7章 三层CS模式的选课与成绩管理系统 352
7.1 选课与成绩管理系统简介 352
7.1.1 系统描述 352
7.1.2 开发工具与平台 352
7.2 需求分析 352
7.2.1 信息需求 352
7.2.2 数据处理需求 353
7.2.3 系统安全性和完整性需求 353
7.3 数据库设计 353
7.3.1 概念设计 353
7.3.2 逻辑设计 353
7.3.3 物理设计和视图机制 354
7.3.4 完整性规则及其实现 355
7.4 三层CS模式及成绩管理系统的架构 356
7.4.1 三层架构体系结构简介 356
7.4.2 C#中建立三层结构框架 357
7.4.3 在业务逻辑层和数据访问层添加非可视化类 361
7.4.4 C#中建立三层模式各层之间的引用关系 362
7.4.5 三层CS模式的选课与简单成绩管理系统体系构架 364
7.4.6 三层模式系统入口与启动项目设置 365
7.5 Server数据库远程连接的实现与配置文件App.config的读取 367
7.5.1 SQL Server 2008数据库的远程连接设置 367
7.5.2 配置文件App.config的建立与读取 375
7.6 三层CS模式中业务逻辑层、数据访问层类的封装 379
7.6.1 业务逻辑层(BLL)相关的操作类 379
7.6.2 数据访问层(DAL)数据库操作通用类的实现 383
第8章 登录模块设计与实现 391
8.1 登录模块界面设计 391
8.1.1 添加窗体到表示层UI 391
8.1.2 窗体控件设计与布局及其属性设置 392
8.2 模块功能描述 393
8.2.1 设置系统用户类型 393
8.2.2 输入用户名称和密码 393
8.2.3 实现用户验证性登录 393
8.2.4 关闭窗体 394
8.3 编码与功能实现 394
8.3.1 窗体类的框架与类的成员(变量与函数) 394
8.3.2 窗体的加载(Load)事件及其编码 395
8.3.3 文本输入框的相关事件及其编码 395
8.3.4 命令按钮(Button)控件的相关事件及其编码 397
8.3.5 单选按钮(RadioButton)控件的有关事件及其编码 398
8.3.6 FormLogon类的相关自定义函数 399
8.4 BLL层的相关的类及其成员函数和成员变量的引用 399
第9章 主窗体与菜单对象 400
9.1 主窗体界面设计 400
9.1.1 添加MDI型窗体到表示层UI 400
9.1.2 控件设计与布局及其属性设置 400
9.2 窗体上菜单、工具栏、状态栏的建立与布局及其功能描述 401
9.2.1 菜单对象及主菜单的建立 401
9.2.2 主菜单之下拉菜单项的建立及属性设置 403
9.2.3 工具栏按钮控件(ToolStrip)对象的建立及属性设置 404
9.2.4 状态栏控件(StatusStrip)对象的建立及其属性设置 405
9.2.5 计时器控件对象的建立及其属性设置 407
9.3 编码与功能实现 407
9.3.1 窗体类的成员变量 407
9.3.2 窗体的加载事件 408
9.3.3 菜单控件及菜单项的事件代码 409
9.3.4 工具栏控件各按钮的有关事件编码 410
9.4 主窗体的启动、关闭 411
9.5 对BLL层的类及相关成员函数和成员变量的引用 412
第10章 学生信息查询模块 413
10.1 学生信息查询界面设计 413
10.1.1 添加窗体到表示层UI 413
10.1.2 控件设计与布局及其属性设置 413
10.2 模块功能设计与描述 415
10.2.1 按学号动态查询学生信息 415
10.2.2 按姓氏或姓名模糊查询学生信息 416
10.2.3 记录集中学生个人信息的显示 417
10.2.4 窗体的关闭 417
10.3 编码与功能实现 417
10.3.1 窗体类的成员变量和成员函数与相关引用 417
10.3.2 窗体的有关事件 419
10.3.3 文本输入框的事件及其编码 420
10.3.4 表格控件(DataGridView)的相关事件及编码 421
10.4 BLL层的类及其函数与成员变量的引用 423
第11章 选课信息管理模块 425
11.1 选课信息管理模块界面设计 425
11.1.1 添加窗体到表示层(UI) 425
11.1.2 控件设计与布局及属性设置 425
11.2 模块功能设计与描述 428
11.2.1 设置行课日期 428
11.2.2 设置选修课程 428
11.2.3 选课信息添加功能 428
11.2.4 选课信息删除功能 430
11.2.5 为其他学生选课 430
11.3 编程与功能实现 431
11.3.1 窗体类的成员函数、成员变量 431
11.3.2 窗体的有关事件及功能 434
11.3.3 命令按钮Button类控件及有关事件 435
11.3.4 表格DataGridView类控件有关事件 437
11.3.5 文本框TextBox类控件的有关事件 438
11.3.6 组合框ComboBox类控件有关事件 439
11.4 BLL层相关类及其相关成员函数和成员变量的引用 440
第12章 选修课成绩维护模块 445
12.1 界面设计 445
12.1.1 添加窗体到表示层(UI) 445
12.1.2 控件添加与布局及其属性设置 445
12.2 模块功能设计与描述 447
12.2.1 学号的动态输入 448
12.2.2 设置行课日期 448
12.2.3 选修课程信息的显示 448
12.2.4 课程成绩的录入与修改 448
12.3 事件编程与功能实现 449
12.3.1 窗体类的成员函数与成员变量 449
12.3.2 窗体的有关事件 449
12.3.3 输入框的有关事件 450
12.3.4 表格控件的有关事件 452
12.3.5 日期组合框的有关事件 453
12.3.6 Timer控件的有关事件 454
12.4 BLL层的相关的类及其成员函数和成员变量的引用 454
第13章 成绩数据批量维护模块 456
13.1 界面设计 456
13.1.1 添加一个窗体到应用表示层 457
13.1.2 窗体控件添加与布局及属性设置 457
13.2 模块功能设计与描述 459
13.2.1 输入教师编号或姓名 459
13.2.2 设置行课日期 460
13.2.3 获取并显示课程名称 460
13.2.4 获取并显示班级名称 460
13.2.5 课程成绩批量录入与保存 460
13.2.6 提交数据 461
13.3 事件编码与功能实现 462
13.3.1 窗体类的成员函数与成员变量 462
13.3.2 窗体的有关事件 466
13.3.3 文本框TextBox类控件的有关事件 467
13.3.4 组合框ComboBox类控件有关事件 468
13.3.5 命令按钮Button类控件的有关事件 470
13.3.6 表格DataGridView类控件有关事件 471
13.4 BLL层相关类及成员函数和成员变量的引用 472
13.5 DAL层相关类及有关成员函数和成员变量的引用 476
附录 477
附录A 运算的优先级 477
附录B C#语言中的关键字 478
附录C C#常用的ASCII字符集 479
参考文献 480
|
內容試閱:
|
C#是微软公司推出的一种面向对象的开发语言。集成了C、C、Java、Visual Basic等语言的优点。例如,C#结合了Visual Basic的快速开发功能和Java的快速安全功能,但C#仍不具有与平台无关性。其开发方向涉及了几乎所有的领域,如窗体开发、网络开发、手机开发、通信开发、数据库开发等。C#是基于.NET框架的计算机开发语言,其语法表达能力强,简单易学。学习C#需要注意两部分内容:语法基础和类库的调用与应用。
本书主要内容基于C#的工程应用与项目开发。在介绍C#的基本理论之后,重点介绍和描述了一个基于三层构架CS模式的完整MIS系统的设计与实现。力求做到:读了能有所学,学之能有所用,用之能有所为,为之能有所成。
本书内容有以下特色。
1. 基础理论部分,知识点精练,适合于初学者,也可作为短学时教学与培训教材。本书的基础篇介绍了C#程序设计语言的基本语法和基础理论知识。
2. 内容组织上,由易到难、循序渐进,从理论学习到项目开发,由浅入深、循序渐进。先介绍了C#的基础语法,再结合实际应用,介绍了一个完整MIS系统的设计与开发。
3. 案例面向实用项目,着眼于知识点的应用。读者从基础理论的学习到应用系统的设计与开发,根据实际应用情况可顺手拈来,直接借鉴、引用。
4. 功能代码进行了模块化。对每个功能模块(类)及其成员(函数和变量),都给出了详细的功能性描述,力求使每个代码段都能让读者看明白、理解透、掌握住。
5. 设计与实现的系统,其针对性、实用性强,易于理解。
本书的编写结合了编者多年的理论教学和开发实践经验。针对计算机语言学习中存在的共性问题听得懂、能看明白、不会编程或编程难,尤其是难于进行工程类项目开发,作者在编写和组织案例时,本着问题方法技术实现的指导思想,先对需要解决的问题进行描述,提出解决问题的要求,分析问题求解的方法原理,到项目的设计与开发(实现),强调和引导如何应用相关知识。通过项目案例的解析,加深对基础理论知识的理解,使读者能够举一反三,灵活应用。
本书的源代码在Visual C# 2012集成开发环境下调试、测试通过。需要说明的是,本书给出的系统中所提供的程序并非唯一正确的求解方案或编码,甚至不一定是最佳答案。给出的程序只是给读者提供一种参考方案和基础理论在项目开发中如何应用的思路和 引导。
本系统中所有的事件、自定义方法、自定义函数等,都按照软件体系结构中关于构件描述的理念进行了描述说明。每个窗体类与相应的功能模块对应,类的方法及成员变量,都与该模块的功能实现相关。数据访问层(DAL)的类(及其方法、函数)是通用的,供业务逻辑层的所有类(及其方法、函数)引用。
由于编者水平有限,书中难免会有不足之处,恳请读者批评指正。
编 者
2018年12月
|
|