• C#高级编程(第11版) C# 7 & .NET Core 2.0
  • C#高级编程(第11版) C# 7 & .NET Core 2.0
  • C#高级编程(第11版) C# 7 & .NET Core 2.0
  • C#高级编程(第11版) C# 7 & .NET Core 2.0
21年品牌 40万+商家 超1.5亿件商品

C#高级编程(第11版) C# 7 & .NET Core 2.0

32 1.6折 198 八五品

仅1件

安徽蚌埠
认证卖家担保交易快速发货售后保障

作者[美]克里斯琴·内格尔(Christian Nagel)著 李 铭 译

出版社清华大学出版社

出版时间2019-03

版次1

装帧平装

货号869

上书时间2024-08-26

云深旧书店

四年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:八五品
图书标准信息
  • 作者 [美]克里斯琴·内格尔(Christian Nagel)著 李 铭 译
  • 出版社 清华大学出版社
  • 出版时间 2019-03
  • 版次 1
  • ISBN 9787302522560
  • 定价 198.00元
  • 装帧 平装
  • 开本 16开
  • 页数 1076页
  • 字数 2273千字
【内容简介】
★为需要新工具的高级开发人员介绍了C# 7和.NET Core 2.0的扩展新特性
  ★揭示了Visual Studio 2017的新技巧和切合实际的提示,包括新的用户界面、新增的模板、编辑器的改进等
  ★论述了计划工作流的全新方式,使编码更快,诊断和调试更精确,测试更频繁,发布更自信
  ★为开发在Android、iOS、Windows、Linux、网络和云上运行的应用程序提供了循序渐进的指南
  ★掌握Visual Studio的高效率特性,以加速AI革新
【作者简介】
:
Christian Nagel 是Visual Studio 和开发技术方向的Microsoft MVP,担任微软开
发技术代言人(Microsoft Regional Director)已经超过15 年。Christian 是CN innovation
公司的创始人,CN innovation 公司提供指导、培训、代码评审,并协助使用微软技术
设计和开发解决方案。他拥有超过25 年的软件开发经验。
Christian Nagel 最初在Digital Equipment 公司通过PDP 11 和VAX / VMS 系统开
始他的计算机职业生涯,接触过各种语言和平台。在2000 年,.NET 只有一个技术
概览版时,他就开始使用各种技术建立.NET 解决方案。目前,他主要指导人们开发和
设计Windows 应用程序、ASP.NET Core Web 应用程序和Xamarin,并帮助他们使用
Microsoft Azure 服务产品。
在软件开发领域工作多年以后,Christian 仍然热爱学习和使用新技术,并通过多种形式教别人如何使用新
技术。他的Microsoft 技术知识非常渊博,编写了很多书,拥有微软认证培训师(MCT)和微软认证解决方案开发
专家(MCSD)认证。Christian 经常在国际会议(如Microsoft Ignite、BASTA!和TechDays)上发言。他创立了INETA
Europe 来支持.NET 用户组。他的联系网站是www.cninnovation.com,博客是https://csharp.christiannagel.com,
其Twitter 账号是@christiannagel。
主编推荐:
C# 7内幕指南,包括高级新特性
目前Visual Studio 2017提供了C# 7。发布为NuGet包的每个.NET Core部分都进行了更新。阅读这本专家级指南是经验丰富的程序员提高效率的更快捷方式。C# 7以更快的速度完成更多工作,没有人比Christian Nagel更适合传播在现实世界中极有价值的全新信息。本书论述清晰,内容完整详尽,为开发人员展示了如何将.NET引入非微软平台,如何操作这些平台上的工具,例如Docker、Gulp和NPM。
精彩内容:
许多年过去了,.NET 有了新的发展势头。.NET Framework 有一个年轻的兄弟.NET Core!
.NET Framework 是封闭的源代码,只能在Windows 系统上使用。现在.NET Core 是开源的,可以在Linux
上使用,并且使用现代模式。在.NET 生态系统中有很多巨大的改进。
注意:
由于最近的变化,C#在很受欢迎的编程语言中排名前十,而.NET Core 在很受欢迎的框架中排名第三。在Web和桌面开发人员中,C#在最流行的语言中排名第三。详情请登录https://insights.stackoverflow.com/ survey/ 2017。
使用C#和ASP .NET Core,可以创建运行在Windows、Linux和Mac上的Web应用程序和服务。使用Windows Runtime(Windows 运行库),可以通过C#和XAML 以及.NET Core 创建本机Windows 应用程序(也称为通用Windows 平台,UWP)。通过Xamarin,使用C#和XAML可以创建运行在Android 和iOS设备上的应用程序。
在.NET Standard 的帮助下,可以创建能在ASP.NET Core、Windows 应用、Xamarin 中共享的库,还可以创建传统的Windows Forms 和WPF 应用程序。所有这些都在本书中介绍。
本书大部分示例都建立在带有Visual Studio 的Windows 系统上。许多示例也在Linux 上进行了测试,并在Linux 和Mac 上运行。除了Windows 应用程序示例之外,还可以使用Mac 的Visual Studio Code 或Visual Studio for the Mac作为开发环境。
0.1 .NET Core的世界
.NET 有很长的历史,但是.NE
...
【目录】


第 i 部分 c# 语 言
 章 . 应用程序和工具   3
1.1 选择技术   3
1.2 回顾. 历史   4
1.2.1 c# 1.0——一种新语言  4
1.2.2 带有泛型的c# 2 和. 2  6
1.2.3 . 3.0——windows presentation foundation   6
1.2.4 c# 3 和. 3.5——linq   6
1.2.5 c# 4 和. 4.0——dynamic 和tpl   7
1.2.6 c# 5 和异步编程   7
1.2.7 c# 6 和. core 1.0   8
1.2.8 c# 7 和. core 2.0    8
1.2.9 选择技术,继续前进    9
1.3 . 术语    10
1.3.1 . framework      11
1.3.2 . core      11
1.3.3 . standard    11
1.3.4 nuget 包   12
1.3.5 名称空间   12
1.3.6 公共语言运行库   13
1.3.7 windows 运行库   13
1.4 用. core cli 编译  14
1.4.1 设置环境   14
1.4.2 创建应用程序   15
1.4.3 构建应用程序   16
1.4.4 运行应用程序   16
1.4.5 创建web 应用程序   17
1.4.6 发布应用程序   17
1.5 使用visual studio 2017   19
1.6 应用程序类型和技术   24
1.6.1 数据访问   24
1.6.2 windows 应用程序   24
1.6.3 xamarin    24
1.6.4 web 应用程序    25
1.6.5 web api     25
1.6.6 webhooks 和signalr   25
1.6.7 microsoft azure     25
1.7 开发工具    26
1.7.1 visual studio munity   27
1.7.2 visual studio professional   27
1.7.3 visual studio enterprise   27
1.7.4 visual studio for mac   27
1.7.5 visual studio code   27
1.8 小结    27
第2 章 核心c#   29
2.1 c#基础     29
2.2 变量    31
2.2.1 初始化变量    31
2.2.2 类型推断    32
2.2.3 变量的作用域    33
2.2.4 常量    34
2.3 预定义数据类型     35
2.3.1 值类型和引用类型    35
2.3.2 . 类型     36
2.3.3 预定义的值类型    36
2.3.4 预定义的引用类型   40
2.4 程序流控制    42
2.4.1 条件语句    42
2.4.2 循环    44
2.4.3 跳转语句    47
2.5 名称空间    47
2.5.1 using 语句    48
2.5.2 名称空间的别名    49
2.6 main()方法    49
2.7 使用注释    50
2.7.1 源文件中的注释   50
2.7.2 xml 文档     51
2.8 c#预处理器指令    52
2.8.1 #define 和#undef    52
2.8.2 #if、#elif、#else 和#endif    52
2.8.3 #warning 和 # error    53
2.8.4 #region 和#endregion   53
2.8.5 #line     53
2.8.6 #pragma     54
2.9 c#编程准则    54
2.9.1 关于标识符的规则    54
2.9.2 用法约定    55
2.10 小结       58
第3 章 对象和类型   59
3.1 创建及使用类     60
3.2 类和结构    60
3.3 类    61
3.3.1 字段    61
3.3.2 只读字段    61
3.3.3 属    62
3.3.4 匿名类型    65
3.3.5 方法    66
3.3.6 构造函数    69
3.4 结构    73
3.4.1 结构是值类型     74
3.4.2 只读结构    75
3.4.3 结构和继承    75
3.4.4 结构的构造函数    75
3.4.5 ref 结构     76
3.5 按值和按引用传递参数   76
3.5.1 ref 参数     77
3.5.2 out 参数    77
3.5.3 in 参数    78
3.6 可空类型    79
3.7 枚举类型    79
3.8 部分类     81
3.9 扩展方法    83
3.10 object 类    83
3.11 小结    84
第4 章 继承   85
4.1 面向对象    85
4.2 继承的类型    85
4.2.1 多重继承    86
4.2.2 结构和类    86
4.3 实现继承    86
4.3.1 虚方法    87
4.3.2 多态    88
4.3.3 隐藏方法    89
4.3.4 调用方法的基类版本    90
4.3.5 抽象类和抽象方法   90
4.3.6 密封类和密封方法   91
4.3.7 派生类的构造函数   91
4.4 修饰符      93
4.4.1 访问修饰符     93
4.4.2 其他修饰符     94
4.5 接    94
4.5.1 定义和实现接     95
4.5.2 派生的接     97
4.6 is 和as 运算符    98
4.7 小结    99
第5 章 泛型    100
5.1 泛型概述     100
5.1.1 能    101
5.1.2 类型安全    102
5.1.3 二进制代码的重用    102
5.1.4 代码的扩展    102
5.1.5 命名约定    102
5.2 创建泛型类    103
5.3 泛型类的功能    105
5.3.1 默认值    106
5.3.2 约束    106
5.3.3 继承    108
5.3.4 静态成员    108
5.4 泛型接     109
5.4.1 协变和抗变    109
5.4.2 泛型接的协变   110
5.4.3 泛型接的抗变   111
5.5 泛型结构   111
5.6 泛型方法   113
5.6.1 泛型方法示例   113
5.6.2 带约束的泛型方法    114
5.6.3 带委托的泛型方法    115
5.6.4 泛型方法规范       115
5.7 小结    116
第6 章 运算符和类型强制转换   117
6.1 运算符和类型转换    117
6.2 运算符   118
6.2.1 运算符的简化作      119
6.2.2 运算符的优先级和关联     125
6.3 使用二进制运算符        126
6.3.1 位的移动            128
6.3.2 有符号数和无符号数    128
6.4 类型的安全       129
6.4.1 类型转换           130
6.4.2 装箱和拆箱         132
6.5 比较对象的相等    133
6.5.1 比较引用类型的相等   133
6.5.2 比较值类型的相等     134
6.6 运算符重载        135
6.6.1 运算符的工作方式       135
6.6.2 运算符重载的示例:vector 结构     136
6.6.3 比较运算符的重载       139
6.6.4 可以重载的运算符       140
6.7 实现自定义的索引运算符     141
6.8 用户定义的类型强制转换     142
6.8.1 实现用户定义的类型强制转换     143
6.8.2 多重类型强制转换       147
6.9 小结       150
第7 章 数组     151
7.1 相同类型的多个对象    151
7.2 简单数组   152
7.2.1 数组的声明   152
7.2.2 数组的初始化   152
7.2.3 访问数组元素   153
7.2.4 使用引用类型   153
7.3 多维数组   154
7.4 锯齿数组   155
7.5 array 类   156
7.5.1 创建数组   156
7.5.2 复制数组   156
7.5.3 排序      157
7.6 数组作为参数   159
7.7 数组协变   159
7.8 枚举   160
7.8.1 ienumerator 接     160
7.8.2 foreach 语句     160
7.8.3 yield 语句   161
7.9 结构比较   164
7.10 span      165
7.10.1 创建切片   166
7.10.2 使用span 改变值    166
7.10.3 只读的span    167
7.11 数组池     167
7.11.1 创建数组池     168
7.11.2 从池中租用内存    168
7.11.3 将内存返回给池    168
7.12 小结       169
第8 章 委托、lambda 表达式和事件    170
8.1 引用方法        170
8.2 委托    170
8.2.1 声明委托    171
8.2.2 使用委托    172
8.2.3 简单的委托示例    174
8.2.4 action和func委托     175
8.2.5 bubblesorter 示例      176
8.2.6 多播委托    177
8.2.7 匿名方法    180
8.3 lambda 表达式    181
8.3.1 参数      181
8.3.2 多行代码    181
8.3.3 闭包     182
8.4 事件     182
8.4.1 事件发布程序    182
8.4.2 事件侦听器    184
8.5 小结    185
第9 章 字符串和正则表达式 186
9.1 system.string 类    187
9.1.1 构建字符串    188
9.1.2 stringbuilder 成员   190
9.2 字符串格式       190
9.2.1 字符串插值        191
9.2.2 期时间和数字的格式    192
9.2.3 自定义字符串格式     193
9.3 正则表达式      194
9.3.1 正则表达式概述    194
9.3.2 regularexpressionsyground 示例    195
9.3.3 显示结果    197
9.3.4 匹配、组和捕获    198
9.4 字符串和span    200
9.5 小结    201
0 章 集合     202
10.1 概述     202
10.2 集合接和类型    203
10.3 列表     203
10.3.1 创建列表    204
10.3.2 只读集合    210
10.4 队列     210
10.5 栈    213
10.6 链表     214
10.7 有序列表    217
10.8 字典     219
10.8.1 字典初始化器   219
10.8.2 键的类型    219
10.8.3 字典示例    220
10.8.4 lookup 类    223
10.8.5 有序字典    223
10.9 集    224
10.10 能    225
10.11 小结    227
1 章 特殊的集合   228
11.1 概述     228
11.2 处理位    228
11.2.1 bitarray 类    229
11.2.2 bitvector32 结构   230
11.3 可观察的集合     232
11.4 不变的集合     233
11.4.1 使用构建器和不变的集合    235
11.4.2 不变集合类型和接      235
11.4.3 使用linq 和不变的数组   236
11.5 并发集合    236
11.5.1 创建管道    237
11.5.2 使用blockingcollection   239
11.5.3 使用concurrentdictionary   240
11.5.4 完成管道    241
11.6 小结     242
2 章 linq   243
12.1 linq 概述    243
12.1.1 列表和实体    244
12.1.2 linq 查询    246
12.1.3 扩展方法    246
12.1.4 推迟查询的执行    248
12.2 标准的查询作符 249
12.2.1 筛选    250
12.2.2 用索引筛选    251
12.2.3 类型筛选    252
12.2.4 复合的from 子句   252
12.2.5 排序    253
12.2.6 分组    254
12.2.7 linq 查询中的变量     255
12.2.8 对嵌套的对象分组      255
12.2.9 内连接      256
12.2.10 左外连接     258
12.2.11 组连接      260
12.2.12 集合作     262
12.2.13 合并     263
12.2.14 分区     264
12.2.15 聚合作符    264
12.2.16 转换作符    266
12.2.17 生成作符    267
12.3 并行linq     267
12.3.1 并行查询    268
12.3.2 分区器    268
12.3.3 取消    269
12.4 表达式树    269
12.5 linq 提供程序     271
12.6 小结     272
3 章 c#函数式编程   273
13.1 概述     273
13.1.1 避突变     274
13.1.2 函数作为个类     275
13.2 表达式体的成员    275
13.3 扩展方法    276
13.4 using static 声明     277
13.5 本地函数    278
13.5.1 本地函数与yield 语句    279
13.5.2 递归本地函数     281
13.6 元组      282
13.6.1 元组的声明和初始化    282
13.6.2 元组解构    283
13.6.3 元组的返回    283
13.6.4 幕后的    284
13.6.5 valuetuple 与元组的兼容    285
13.6.6 推断出元组名称     285
13.6.7 元组与链表    286
13.6.8 元组和linq    286
13.6.9 解构    287
13.6.10 解构与扩展方法    288
13.7 模式匹配        288
13.7.1 模式匹配与is 运算符    288
13.7.2 模式匹配与switch 语句   290
13.7.3 模式匹配与泛型      291
13.8 小结    291
4 章 错误和异常     292
14.1 简介    292
14.2 异常类   293
14.3 捕获异常   294
14.3.1 异常和能   296
14.3.2 实现多个catch 块    296
14.3.3 在其他代码中捕获异常    299
14.3.4 system.exception 属    299
14.3.5 异常过滤器        299
14.3.6 重新抛出异常       300
14.3.7 没有处理异常时发生的情况     303
14.4 用户定义的异常类     303
14.4.1 捕获用户定义的异常      304
14.4.2 抛出用户定义的异常      305
14.4.3 定义用户定义的异常类    307
14.5 调用者信息        309
14.6 小结    310
5 章 异步编程      311
15.1 异步编程的重要   311
15.2 异步编程的. 历史    312
15.2.1 同步调用      312
15.2.2 异步模式      313
15.2.3 基于事件的异步模式     314
15.2.4 基于任务的异步模式     314
15.2.5 异步main()方法     315
15.3 异步编程的基础   315
15.3.1 创建任务   316
15.3.2 调用异步方法     316
15.3.3 使用awaiter      317
15.3.4 延续任务   317
15.3.5 同步上下文   318
15.3.6 使用多个异步方法    318
15.3.7 使用valuetasks     319
15.3.8 转换异步模式      320
15.4 错误处理       320
15.4.1 异步方法的异常处理     321
15.4.2 多个异步方法的异常处理    321
15.4.3 使用aggregateexception 信息   322
15.5 异步与windows 应用程序   322
15.5.1 配置await     323
15.5.2 切换到ui 线程     324
15.5.3 使用iasyncoperation   325
15.5.4 避阻塞情况      325
15.6 小结       325
6 章 反、元数据和动态编程    326
16.1 在运行期间检查代码和动态编程   326
16.2 自定义特       327
16.2.1 编写自定义特     327
16.2.2 自定义特示例:whatsnewattributes   330
16.3 反     331
16.3.1 system.type 类    332
16.3.2 typeview 示例    333
16.3.3 assembly 类      335
16.3.4 完成whatsnewattributes 示例    336
16.4 为反使用动态语言扩展     339
16.4.1 创建calculator 库    339
16.4.2 动态实例化类型     339
16.4.3 用reflection api 调用成员    340
16.4.4 使用动态类型调用成员    340
16.5 dynamic 类型    341
16.6 dynamicobject 和expandoobject概述    344
16.6.1 dynamicobject   344
16.6.2 expandoobject    345
16.7 小结     347
7 章 托管和非托管内存   348
17.1 内存     348
17.2 后台内存管理     349
17.2.1 值数据类型    349
17.2.2 引用数据类型   350
17.2.3 垃圾收集       352
17.3 强引用和弱引用    354
17.4 处理非托管的资源  354
17.4.1 析构函数或终结器     355
17.4.2 idisable 接     356
17.4.3 using 语句        356
17.4.4 实现idisable 接和析构函数    357
17.4.5 idisable 和终结器的规则     358
17.5 不安全的代码      358
17.5.1 用指针直接访问内存    358
17.5.2 指针示例:pointeryground   364
17.5.3 使用指针优化能      367
17.6 引用的语义     369
17.6.1 传递ref 和返回ref    371
17.6.2 ref 和数组     371
17.7 span     373
17.7.1 span 引用托管堆   373
17.7.2 span 引用栈       373
17.7.3 span 引用本机堆    374
17.7.4 span 扩展方法      374
17.8 台调用      375
17.9 小结        378
8 章 visual studio 2017     379
18.1 使用visual studio 2017     379
18.1.1 visual studio 的版本       382
18.1.2 visual studio 设置        382
18.2 创建项目             383
18.2.1 面向多个版本的.     384
18.2.2 选择项目类型         385
18.3 浏览并编写项目      388
18.3.1 solution explorer     388
18.3.2 使用代码编辑器     394
18.3.3 学和理解其他窗   399
18.3.4 排列窗      402
18.4 构建项目     402
18.4.1 构建、编译和生成代码    403
18.4.2 调试版本和发布版本     403
18.4.3 选择配置     404
18.4.4 编辑配置     404
18.5 调试代码     406
18.5.1 设置断点     407
18.5.2 使用数据提示和调试器可视化工具    407
18.5.3 live visual tree     408
18.5.4 监视和修改变量     409
18.5.5 异常      409
18.5.6 多线程    410
18.
点击展开 点击收起

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP