Visual C#从入门到精通(第10版) 版权信息
- ISBN:9787302617648
- 条形码:9787302617648 ; 978-7-302-61764-8
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 所属分类:>
Visual C#从入门到精通(第10版) 本书特色
基于Visual Studio 2022的Visual C#基础实践指南
扩展专业能力,通过自主学习,完全掌握Visual C#编程基础知识。本书基于Visual Studio 2022,提供指导方针、练习和代码来帮助软件开发人员构建几乎可以在任何地方运行的高响应性、高伸缩性的云端应用。
Visual C#从入门到精通(第10版) 内容简介
C#作为微软的旗舰编程语言,是编写高效应用程序的语言,深受程序员喜爱。《Visual C#从入门到精通(第10版)》沿袭深受读者欢迎的Step by Step风格,围绕语言的基础知识和新功能进行了全面的介绍,同时借助于练习来引导读者逐步构建云端应用等。全书共27章,结构清晰,叙述清楚。所有练习均在Visual Studio 2022简体中文版上进行过全面演练。无论是刚开始接触面向对象编程的新手,还是打算迁移到C#的C、C++或Java程序员,都可以从本书中汲取到新的知识,迅速掌握C#编程技术。
Visual C#从入门到精通(第10版) 目录
简明目录
第Ⅰ部分 Visual C#和Visual Studio 2022概述
第1章 欢迎进入C#编程世界 3
第2章 使用变量、操作符和表达式 37
第3章 方法和作用域 61
第4章 使用判断语句 93
第5章 使用复合赋值和循环语句 115
第6章 管理错误和异常 131
第Ⅱ部分 理解C#对象模型
第7章 创建并管理类和对象 155
第8章 理解值和引用 177
第9章 使用枚举和结构创建值类型 201
第10章 使用数组 219
第11章 理解参数数组 243
第12章 使用继承 255
第13章 创建接口和定义抽象类 277
第14章 使用垃圾回收和资源管理 303
第Ⅲ部分 用C#定义可扩展类型
第15章 实现属性以访问字段 327
第16章 处理二进制数据和使用索引器 357
第17章 泛型概述 373
第18章 使用集合 403
第19章 枚举集合 427
第20章 分离应用程序逻辑并处理事件 441
第21章 使用查询表达式来查询内存中的数据 469
第22章 操作符重载 491
第Ⅳ部分 用C#构建UWP应用
第23章 使用任务提高吞吐量 511
第24章 通过异步操作提高响应速度 549
第25章 实现UWP应用的用户界面 587
第26章 在UWP应用中显示和搜索数据 627
第27章 在UWP应用中访问远程数据库 655
详细目录
第Ⅰ部分 Visual C#和Visual Studio 2022概述
第1章 欢迎进入C#编程世界 3
1.1 写**个C#程序 3
1.2 开始在Visual Studio 2022环境中编程 8
1.3 用Visual Studio 2022写**个程序 12
1.4 使用命名空间 17
1.5 命名空间和程序集 18
1.6 对代码进行注释 19
1.7 创建图形应用程序 19
1.7.1 探索通用Windows平台应用程序 28
1.7.2 向图形应用程序添加代码 31
小结 34
第1章快速参考 35
第2章 使用变量、操作符和表达式 37
2.1 理解语句 37
2.2 使用标识符 38
2.3 C#语言的关键字 38
2.4 使用变量 39
2.4.1 命名变量 39
2.4.2 声明变量 40
2.4.3 指定数值 40
2.5 使用基元数据类型 41
2.5.1 未赋值的局部变量 42
2.5.2 显示基元数据类型的值 42
2.6 使用算术操作符 47
2.6.1 操作符和类型 48
2.6.2 深入了解算术操作符 49
2.6.3 控制优先级 54
2.6.4 使用结合性对表达式进行求值 54
2.6.5 结合性和赋值操作符 55
2.7 变量递增和递减 56
2.8 声明隐式类型的局部变量 57
小结 58
第2章快速参考 58
第3章 方法和作用域 61
3.1 创建方法 61
3.1.1 声明方法 62
3.1.2 从方法返回数据 63
3.1.3 使用表达式主体方法 63
3.2 调用方法 65
3.2.1 方法的调用语法 65
3.2.2 从方法返回多个值 67
3.3 使用作用域 69
3.3.1 定义局部作用域 69
3.3.2 定义类作用域 70
3.3.3 重载方法 71
3.3.4 编写方法 71
3.4 使用Visual Studio调试器来调试方法 75
3.4.1 重构代码 80
3.4.2 嵌套方法 80
3.5 使用可选参数和具名参数 83
3.5.1 定义可选参数 84
3.5.2 传递具名参数 85
3.5.3 消除可选参数和具名参数的歧义 85
小结 90
第3章快速参考 90
第4章 使用判断语句 93
4.1 声明布尔变量 93
4.2 使用布尔操作符 94
4.2.1 理解相等和关系操作符 94
4.2.2 理解条件逻辑操作符 95
4.2.3 短路求值 95
4.2.4 操作符的优先级和结合性总结 96
4.2.5 模式匹配 97
4.3 使用if语句做判断 97
4.3.1 理解if语句的语法 97
4.3.2 使用代码块分组语句 99
4.3.3 嵌套if语句 100
4.4 使用switch语句做判断 105
4.4.1 理解switch语句的语法 105
4.4.2 遵守switch语句的规则 106
4.5 为switch表达式使用模式匹配 110
小结 112
第4章快速参考 112
第5章 使用复合赋值和循环语句 115
5.1 使用复合赋值操作符 115
5.2 编写while语句 116
5.3 编写for语句 120
5.4 编写do语句 122
小结 129
第5章快速参考 129
第6章 管理错误和异常 131
6.1 尝试执行代码并捕捉异常 132
6.1.1 未处理的异常 133
6.1.2 使用多个catch处理程序 134
6.1.3 捕捉多个异常 135
6.1.4 筛选异常 136
6.1.5 传播异常 139
6.2 使用checked和unchecked进行整数运算 141
6.2.1 编写checked语句 142
6.2.2 编写checked表达式 142
6.3 抛出异常 145
6.4 使用finally块 150
小结 151
第6章快速参考 151
第Ⅱ部分 理解C#对象模型
第7章 创建并管理类和对象 155
7.1 理解分类 155
7.2 封装的目的 156
7.3 定义并使用类 156
7.4 控制可访问性 158
7.5 使用构造器 159
7.5.1 重载构造器 160
7.5.2 解构对象 167
7.6 理解静态方法和数据 168
7.6.1 创建共享字段 169
7.6.2 使用const关键字创建静态字段 170
7.6.3 理解静态类 170
7.6.4 静态using语句 170
7.7 匿名类 173
小结 174
第7章快速参考 174
第8章 理解值和引用 177
8.1 复制值类型的变量和类 177
8.2 理解值和可空类型 182
8.2.1 空条件操作符 184
8.2.2 使用可空类型 185
8.2.3 理解可空类型的属性 185
8.3 使用ref参数和out参数 186
8.3.1 创建ref参数 187
8.3.2 创建out参数 188
8.4 计算机内存的组织方式 190
8.4.1 使用栈和堆 191
8.4.2 System.Object类 192
8.4.3 装箱 192
8.4.4 拆箱 193
8.5 数据的安全转型 194
8.5.1 is操作符 195
8.5.2 as操作符 195
8.5.3 复习switch语句 196
小结 198
第8章快速参考 199
第9章 使用枚举和结构创建值类型 201
9.1 使用枚举 201
9.1.1 声明枚举 201
9.1.2 使用枚举 202
9.1.3 选择枚举字面值 203
9.1.4 选择枚举的基础类型 203
9.2 使用结构 205
9.2.1 声明结构 207
9.2.2 理解结构和类的区别 208
9.2.3 声明结构变量 209
9.2.4 理解结构的初始化 210
9.2.5 复制结构变量 214
小结 218
第9章快速参考 218
第10章 使用数组 219
10.1 声明数组变量 220
10.2 创建数组实例 220
10.3 填充和使用数组 221
10.3.1 创建隐式类型的数组 222
10.3.2 访问单独的数组元素 223
10.3.3 访问数组元素序列 223
10.3.4 遍历数组 224
10.3.5 数组作为方法的参数和返回值 225
10.4 复制数组 226
10.5 使用多维数组 228
10.6 访问包含值类型的数组 238
小结 241
第10章快速参考 241
第11章 理解参数数组 243
11.1 回顾重载 243
11.2 使用数组参数 244
11.2.1 声明参数数组 245
11.2.2 使用params object[] 247
11.2.3 使用参数数组 248
11.3 比较参数数组和可选参数 251
小结 253
第11章快速参考 253
第12章 使用继承 255
12.1 什么是继承 255
12.2 使用继承 256
12.2.1 复习System.Object类 258
12.2.2 调用基类构造器 258
12.2.3 类的赋值 259
12.2.4 声明新方法 260
12.2.5 声明虚方法 262
12.2.6 声明重写方法 263
12.2.7 理解受保护的访问 265
12.3 创建扩展方法 271
小结 274
第12章快速参考 274
第13章 创建接口和定义抽象类 277
13.1 理解接口 277
13.1.1 定义接口 278
13.1.2 实现接口 279
13.1.3 通过接口引用类 280
13.1.4 使用多个接口 281
13.1.5 显式实现接口 281
13.1.6 用接口进行版本控制 283
13.1.7 接口的限制 284
13.1.8 定义和使用接口 285
13.2 抽象类 293
13.3 密封类 295
13.3.1 密封方法 295
13.3.2 实现并使用抽象类 296
小结 301
第13章快速参考 302
第14章 使用垃圾回收和资源管理 303
14.1 对象生存期 303
14.1.1 编写终结器 304
14.1.2 为什么要使用垃圾回收器 306
14.1.3 垃圾回收器的工作原理 307
14.1.4 慎用终结器 308
14.2 资源管理 308
14.2.1 资源清理方法 309
14.2.2 异常安全的资源清理 309
14.2.3 using语句和IDisposable 接口 310
14.2.4 从终结器中调用Dispose方法 312
14.3 实现异常安全的资源清理 313
14.4 处理异步清理 322
小结 323
第14章快速参考 323
第Ⅲ部分 用C#定义可扩展类型
第15章 实现属性以访问字段 327
15.1 使用方法实现封装 327
15.2 什么是属性 329
15.2.1 使用属性 331
15.2.2 只读属性 332
15.2.3 只写属性 332
15.2.4 属性的可访问性 333
15.3 理解属性的局限性 334
15.4 在接口中声明属性 335
15.4.1 用属性替代方法 337
15.4.2 用属性进行模式匹配 340
15.5 生成自动属性 341
15.6 用属性初始化对象 343
15.7 用带属性的“记录”来实现轻量级结构 348
小结 352
第15章快速参考 353
第16章 处理二进制数据和使用索引器 357
16.1 什么是索引器 357
16.1.1 存储二进制值 358
16.1.2 显示二进制值 358
16.1.3 操纵二进制值 359
16.1.4 用索引器解决相同问题 360
16.2 理解索引器的访问器 362
16.3 对比索引器和数组 363
16.3 接口中的索引器 365
16.4 在Windows应用程序中使用索引器 366
小结 371
第16章快速参考 371
第17章 泛型概述 373
17.1 object的问题 373
17.2 泛型解决方案 377
17.2.1 对比泛型类和常规类 379
17.2.2 泛型和约束 379
17.3 创建泛型类 379
17.3.1 二叉树理论 379
17.3.2 使用泛型构造二叉树类 382
17.4 创建泛型方法 391
17.5 可变性和泛型接口 396
17.5.1 协变接口 397
17.5.2 逆变接口 399
小结 401
第17章快速参考 401
第18章 使用集合 403
18.1 什么是集合类 403
18.1.1 List集合类 404
18.1.2 LinkedList集合类 406
18.1.3 Queue集合类 408
18.1.4 PriorityQueue集合类 409
18.1.5 Stack集合类 410
18.1.6 Dictionary 集合类 411
18.1.7 SortedList 集合类 412
18.1.8 HashSet集合类 413
18.2 使用集合初始化器 415
18.3 Find方法、谓词和Lambda 表达式 416
18.3.1 Lambda表达式的形式 417
18.3.2 Lambda表达式和匿名 方法 418
18.4 比较数组和集合 419
小结 423
第18章快速参考 424
第19章 枚举集合 427
19.1 枚举集合中的元素 427
19.1.1 手动实现枚举器 428
19.1.2 实现IEnumerable接口 433
19.2 用迭代器实现枚举器 435
19.2.1 一个简单的迭代器 435
19.2.2 使用迭代器为Tree 类定义枚举器 437
小结 439
第19章快速参考 439
第20章 分离应用程序逻辑并处理事件 441
20.1 理解委托 442
20.2 .NET类库的委托例子 443
20.2.1 自动化工厂的例子 444
20.2.2 声明和使用委托 447
20.3 Lambda表达式和委托 455
20.4 启用事件通知 456
20.4.1 声明事件 456
20.4.2 订阅事件 457
20.4.3 取消订阅事件 458
20.4.4 引发事件 458
20.5 理解用户界面事件 459
20.6 使用事件 460
小结 466
第20章快速参考 466
第21章 使用查询表达式来查询内存中的数据 469
21.1 什么是LINQ 469
21.2 在C#应用程序中使用LINQ 470
21.2.1 选择数据 472
21.2.2 筛选数据 474
21.2.3 排序、分组和聚合数据 474
21.2.4 联接数据 476
21.2.5 使用查询操作符 478
21.2.6 查询Tree对象中的数据 480
21.3 LINQ和推迟求值 485
小结 489
第21章快速参考 489
第22章 操作符重载 491
22.1 理解操作符 491
22.1.1 操作符的限制 492
22.1.2 重载的操作符 492
22.1.3 创建对称操作符 493
22.1.4 理解复合赋值 495
22.2 声明递增和递减操作符 495
22.3 比较结构和类中的操作符 496
22.4 定义成对的操作符 497
22.5 实现操作符 497
22.6 重载相等操作符 500
22.7 理解转换操作符 503
22.7.1 提供内建转换 503
22.7.2 实现用户自定义的转换操作符 504
22.7.3 再论创建对称操作符 505
22.7.4 编码转换操作符 506
小结 508
第22章快速参考 508
第Ⅳ部分 用C#构建UWP应用
第23章 使用任务提高吞吐量 511
23.1 使用并行处理执行多任务处理 511
23.2 多核处理器的崛起 512
23.3 用Microsoft .NET实现多任务处理 513
23.3.1 任务、线程和线程池 513
23.3.2 创建、运行和控制任务 515
23.3.3 使用Task类实现并行 处理 517
23.3.4 使用Parallel类对任务进行抽象 525
23.3.5 什么时候使用 Parallel类 529
23.4 取消任务和处理异常 531
23.4.1 协作式取消的原理 532
23.4.2 使用AggregateException类处理任务的异常 542
23.4.3 为Canceled和Faulted任务使用延续 543
小结 544
第23章快速参考 545
第24章 通过异步操作提高响应速度 549
24.1 实现异步方法 550
24.1.1 定义异步方法:问题 550
24.1.2 定义异步方法:解决 方案 553
24.1.3 定义返回值的异步方法 557
24.1.4 异步方法注意事项 558
24.1.5 异步方法和Windows Runtime API 560
24.1.6 任务、内存分配和效率 561
24.2 用PLINQ进行并行数据访问 564
24.2.1 用PLINQ增强遍历集合时的性能 564
24.2.2 取消PLINQ查询 568
24.3 同步对数据的并发访问 569
24.3.1 锁定数据 571
24.3.2 用于协调任务的同步 基元 572
24.3.3 取消同步 574
24.3.4 并发集合类 575
24.3.5 使用并发集合和锁实现线程安全的数据访问 575
小结 584
第24章快速参考 585
第25章 实现UWP应用的用户界面 587
25.1 UWP应用的特点 588
25.2 使用“空白应用”模板构建UWP应用 590
25.3 实现可伸缩用户界面 593
25.3.1 用Grid控件实现表格 布局 602
25.3.2 用可视状态管理器调整 布局 610
25.4 向UI应用样式 616
小结 626
第25章快速参考 626
第26章 在UWP应用中显示和搜索 数据 627
26.1 实现Model-View-ViewModel模式 627
26.2 通过数据绑定显示数据 628
26.2.1 通过数据绑定修改数据 633
26.2.2 为ComboBox控件使用数据 绑定 638
26.3 创建ViewModel 640
26.4 向ViewModel添加命令 643
小结 653
第26章快速参考 653
第27章 在UWP应用中访问远程数据库 655
27.1 从数据库获取数据 655
27.1.1 创建实体模型 664
27.1.2 创建并使用REST Web 服务 669
27.2 更新UWP应用来使用Web 服务 683
27.3 在Customers应用中查找数据 693
27.4 通过REST Web服务插入、更新和删除数据 699
小结 700
第27章快速参考 701
展开全部
Visual C#从入门到精通(第10版) 作者简介
约翰 ?? 夏普 (John Sharp)
微软MVP,资深技术作家,Content Master(英国CM集团的分支机构)的首席技术专家。作者拥有伦敦帝国理工学院的计算机荣誉学士学位。过去27年,他一直致力于软件开发和培训教程与课程的写作。作者拥有丰富的技术资历,精通数据库系统、UNIX、C、C++和C#应用开发。他还开发过Java和JavaScript应用,用Windows Azure设计企业级方案。 周 靖
微软MVP(最有价值专家),技术型资深译者。涉猎广泛,具有深厚的技术功底和良好的文学素养。早期痴迷于硬件,曾多年担任《微型计算机》杂志特约作者。继而潜心钻研程序设计并在这方面积累了丰富的经验。翻译风格严谨、准确、朴实、流畅,深受读者好评。代表译著有《C++入门经典》(最新版第10版)、《Windows核心编程》(最新版第5版)、《CLR via C》(最新版第4版)和《Visual C#从入门到精通》(最新版第10版)等。