C# 7.0 核心技术指南 (10):C#和.NET Framework 简介 1.8.5

阅读数:11 2019 年 11 月 30 日 23:31

C# 7.0核心技术指南(10):C#和.NET Framework简介 1.8.5

(C# 3.0 新特性)

内容简介
本书前三章将集中介绍 C#语言。首先介绍基本的语法、类型和变量。而后会介绍一些高级的特性,如不安全代码以及预处理指令。如果你是 C#语言的初学者,请循序渐进地阅读这些章节。
其余各章则涵盖了.NET Framework 的核心功能,包括 LINQ、XML、集合、并发、I/O 和网络、内存管理、反射、动态编程、特性、安全、应用程序域和原生互操作性等主题。第 6 章和第 7 章是后续主题的基础,除这两章之外,其余各章可以按照需要以任何顺序阅读。LINQ 相关的三个章节好按顺序阅读。其中的一些章节需要一些并发相关的知识,这些知识将在第 14 章中介绍。

C# 3.0 增加的特性主要集中在语言集成查询(Language Integrated Query, LINQ)上。LINQ 令 C#程序可以直接编写查询并以静态方式检查其正确性。它可以查询本地集合(如列表或 XML 文档),也可以查询远程数据源(如数据库)。C# 3.0 中和 LINQ 相关的新特性还包括隐式类型局部变量、匿名类型、对象构造器、Lambda 表达式、扩展方法、查询表达式和表达式树。

隐式类型局部变量(var 关键字,见第 2 章)允许在声明语句中省略变量类型,然后由编译器推断其类型。这样可以简化代码并支持匿名类型(见第 4 章)。匿名类型是一些即时创建的类,它们常用于生成 LINQ 查询的最终输出结果。数组也可以隐式类型化(见第 2 章)。

对象初始化器(见第 3 章)允许在调用构造器之后以内联的方式设置属性,从而简化对象的构造过程。对象初始化器不仅支持命名类型也支持匿名类型。

Lambda 表达式(见第 4 章)是由编译器即时创建的微型函数,适用于创建“流畅的”LINQ 查询(见第 8 章)。

扩展方法(见第 4 章)可以在不修改类型定义的情况下使用新的方法扩展现有类型,使静态方法变得像实例方法一样。LINQ 表达式的查询运算符就是使用扩展方法实现的。

查询表达式(见第 8 章)提供了编写 LINQ 查询的更高级语法,大大简化了具有多个序列或范围变量的 LINQ 查询的编写过程。

表达式树(见第 8 章)是赋值给一种特殊类型 Expression的 Lambda 表达式的 DOM(文档对象模型,Document Object Model)模型。表达式树使 LINQ 查询能够远程执行(例如在数据库服务器上),因为它们可以在运行时进行转换和翻译(例如变成 SQL 语句)。

C# 3.0 还添加了自动化属性和分部方法。

自动化属性(见第 3 章)对在 get/set 中对私有字段直接读写的属性进行了简化,并将字段的读写逻辑交给编译器自动生成。分部方法(Partial Method,见第 3 章)可以令自动生成的分部类(Partial Class)自定义需要手动实现的钩子函数,而该函数可以在没有使用的情况下“消失”。

C# 7.0核心技术指南(10):C#和.NET Framework简介 1.8.5

购书地址 https://item.jd.com/12681788.html?dist=jd

评论

发布