C#高级编程(第10版) C# 6 & .NET Core 1.0 (.NET开发经典名著)
上QQ阅读APP看书,第一时间看更新

0.6 本书的内容

本书首先在第1章介绍.NET的整体体系结构,给出编写托管代码所需要的背景知识。此后概述不同的应用程序类型,学习如何用新的开发环境CLI编译程序。之后本书分几部分介绍C#语言及其在各个领域中的应用。

第I部分——C#语言

该部分给出C#语言的良好背景知识。尽管这一部分假定读者是有经验的编程人员,但它没有假设读者拥有任何特定语言的知识。首先介绍C#的基本语法和数据类型,再介绍C#的面向对象特性,之后介绍C#中的一些高级编程主题,如委托、lambda表达式、语言集成查询(LINQ)、反射和异步编程。

第II部分——.NET Core与Windows Runtime

该部分首先介绍全世界C#开发人员都使用的主要IDE:Visual Studio 2015。第17章学习Visual Studio企业版可用的工具。

第18章还要学习C#编译器的工作原理,以及如何使用.NET编译器平台以编程方式修改代码。

用C#代码创建功能时,不要跳过创建单元测试的步骤。一开始需要更多的时间,但随着时间的推移,添加功能和维护代码时,就会看到其优势。第19章介绍如何创建单元测试、网络测试和编码的UI测试。

第20~28章介绍独立于应用程序类型的.NET Core和Windows运行库。第20章学习如何从应用程序中写出也可以在生产环境中使用的诊断信息。第21章和第22章介绍了使用任务并行库(Task Parallel Library, TPL)进行并行编程,以及用于同步的各种对象。第23章学习如何访问文件系统,读取文件和目录,了解如何使用System.IO名称空间中的流和Windows运行库中的流来编写Windows应用程序。第24章利用流来了解安全性,以及如何加密数据,允许进行安全的转换。还将学习使用套接字和使用更高级别的抽象(如HttpClient,见第25章)的联网的核心基础。第26章讨论了Microsoft Composition,它允许创建容器和部件之间的独立性。第27章论述如何将对象序列化到XML和JSON中,以及用于读取和编写XML的不同技术。最后,第28章学会使用本地化的技术本地化应用程序,该技术对Windows和Web应用程序都非常重要。

第III部分——Windows应用程序

该部分的主题是使用XAML语法构建应用程序——UWP(通用Windows应用程序)和WPF。第29章介绍XAML的基础,包括XAML语法、依赖属性,以及标记扩展(可以创建自己的XAML语法)。第30章学习如何给基于XAML的应用程序指定样式。第31章主要关注MVVM(Model-View-View Model)模式,学习利用基于XAML的应用程序中的数据绑定特性,允许在很多UWP应用程序和WPF应用程序之间共享代码。使用Xamarin也可以为iPhone和Android平台分享很多开发代码。然而,本书不探讨如何使用Xamarin进行开发。论述UWP应用程序和WPF应用程序的介绍性章节后,有两章的内容讨论UWP应用程序的具体特征,另外两章讨论WPF应用程序。第32章和第33章介绍具体的XAML控件与UWP应用程序,如RelativePanel和AdaptiveTrigger、新编译的绑定、应用程序生命周期、共享数据和创建后台任务。第34章和第35章论述WPF专用特性,如Ribbon控件,显示分层数据的TreeView、WPF专用的数据绑定功能,创建流和固定文档,创建XPS(XML Paper Specification)文件。

该部分的最后,第36章使用ClickOnce部署WPF应用程序,且包含在商店中获得UWP应用程序的信息。

第IV部分——Web应用程序和服务

该部分阐述Web应用程序和服务,还包含关于ADO.NET的两章内容。虽然也可以在客户应用程序中使用ADO.NET(第37章)和Entity Framework(第38章),但通常这些技术在服务器上使用,从客户端调用服务。

第39章学习如何创建自己的Windows服务,操作系统启动时,Windows服务就会运行。

ASP.NET的新版本ASP.NET Core 1.0参见第40章。其中讨论了ASP.NET的基础,以及如何使用这些基础知识建立ASP.NET MVC 6。ASP.NET MVC 6的特点参见第41章。

注意:本书没有介绍ASP.NET Web Forms,尽管ASP.NET 4.6为ASP.NET Web Forms提供了新特性。本书只论述使用ASP.NET Core 1.0的ASP.NET新技术版本。

第42章讨论了ASP.NET MVC 6的REST服务特性:ASP.NET Web API。Web应用程序的发布和订阅技术使用ASP.NET技术WebHooks和SignalR的形式,在第43章中讨论。第44章讨论了使用SOAP和WCF与服务交流的旧技术。

与前一部分一样,该部分的最后讨论部署,包括部署运行在互联网信息服务器(Internet Information Server, IIS)上的网站,或使用Microsoft Azure托管网站。