编辑推荐

C#7内幕指南,包括高级新特性

目前VisualStudio2017提供了C#7。发布为NuGet包的每个.NETCore部分都进行了更新。阅读这本专家级指南是经验丰富的程序员提高效率的更快捷方式。C#7以更快的速度完成更多工作,没有人比ChristianNagel更适合传播在现实世界中极有价值的全新信息。《C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)》论述清晰,内容完整详尽,为开发人员展示了如何将.NET引入非微软平台,如何操作这些平台上的工具,例如Docker、Gulp和NPM。

内容简介

★为需要新工具的高级开发人员介绍了C#7和.NETCore2.0的扩展新特性

★揭示了VisualStudio2017的新技巧和切合实际的提示,包括新的用户界面、新增的模板、编辑器的改进等

★论述了计划工作流的全新方式,使编码更快,诊断和调试更精确,测试更频繁,发布更自信

★为开发在Android、iOS、Windows、Linux、网络和云上运行的应用程序提供了循序渐进的指南

★掌握VisualStudio的高效率特性,以加速AI革新

作者简介

ChristianNagel是VisualStudio和开发技术方向的MicrosoftMVP,担任微软开发技术代言人(MicrosoftRegionalDirector)已经超过15年。Christian是CNinnovation公司的创始人,CNinnovation公司提供指导、培训、代码评审,并协助使用微软技术设计和开发解决方案。他拥有超过25年的软件开发经验。

ChristianNagel最初在DigitalEquipment公司通过PDP11和VAX/VMS系统开始他的计算机职业生涯,接触过各种语言和平台。在2000年,.NET只有一个技术概览版时,他就开始使用各种技术建立.NET解决方案。目前,他主要指导人们开发和设计Windows应用程序、ASP.NETCoreWeb应用程序和Xamarin,并帮助他们使用MicrosoftAzure服务产品。

在软件开发领域工作多年以后,Christian仍然热爱学习和使用新技术,并通过多种形式教别人如何使用新技术。他的Microsoft技术知识非常渊博,编写了很多书,拥有微软认证培训师(MCT)和微软认证解决方案开发专家(MCSD)认证。Christian经常在国际会议(如MicrosoftIgnite、BASTA!和TechDays)上发言。他创立了INETAEurope来支持.NET用户组。

前言/序言

  前言
  许多年过去了,.NET有了新的发展势头。.NETFramework有一个年轻的兄弟.NETCore!
  .NETFramework是封闭的源代码,只能在Windows系统上使用。现在.NETCore是开源的,可以在Linux
  上使用,并且使用现代模式。在.NET生态系统中有很多巨大的改进。
  注意:
  由于最近的变化,C#在最受欢迎的编程语言中排名前十,而.NETCore在最受欢迎的框架中排名第三。在Web和桌面开发人员中,C#在最流行的语言中排名第三。详情请登录https://insights.stackoverflow.com/survey/2017。
  使用C#和ASP.NETCore,可以创建运行在Windows、Linux和Mac上的Web应用程序和服务。使用WindowsRuntime(Windows运行库),可以通过C#和XAML以及.NETCore创建本机Windows应用程序(也称为通用Windows平台,UWP)。通过Xamarin,使用C#和XAML可以创建运行在Android和iOS设备上的应用程序。
  在.NETStandard的帮助下,可以创建能在ASP.NETCore、Windows应用、Xamarin中共享的库,还可以创建传统的WindowsForms和WPF应用程序。所有这些都在《C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)》中介绍。
  《C#高级编程(第11版) C# 7 & .NET Core 2.0(.NET开发经典名著)》大部分示例都建立在带有VisualStudio的Windows系统上。许多示例也在Linux上进行了测试,并在Linux和Mac上运行。除了Windows应用程序示例之外,还可以使用Mac的VisualStudioCode或VisualStudiofortheMac作为开发环境。
  0.1.NETCore的世界
  .NET有很长的历史,但是.NETCore很年轻。.NETCore2.0从.NETFramework中获得了许多新的API,使其更容易将现有的.NETFramework应用程序迁移到.NETCore的新世界。
  一个简单的步骤是,可以创建使用.NETStandard2.0的库,这些库可以在.NETFramework4.6.1及以上版本的应用程序、.NETCore2.0应用程序和WindowsBuild16299以上版本的应用程序中使用。
  现在,没有理由不在后端使用ASP.NETCore。随着迁移到.NETStandard的简化,越来越多的库可以在.NETCore中使用。总体来看,ASP.NETCoreMVC与ASP.NETMVC非常相似。然而ASP.NETCoreMVC要灵活得多,使用.NETCore模式时更容易操作,也更容易扩展。
  对于创建新的Web应用程序,可能只需要使用新技术RazorPages。如果应用程序增长,RazorPages可以很容易地扩展到使用ASP.NETCoreMVC的模型-视图-控制器模式。
  在撰写本文时,用于实时通信的技术SignalR的.NETCore版本即将发布。
  ASP.NETCore与JavaScript技术(如Angular和React/Redux)的结合非常有效,甚至还有模板使用这些技术以及用于后端服务的ASP.NETCore创建项目。
  注意:
  可以通过https://github.com/dotnet/corefx访问.NETCore的源代码。.NETCore命令行可以在https://github.com/dotnet/cli上使用。在https://github.com/aspnet上有许多ASP.NETCore的存储库。其中包括ASP.NETCoreMVC、Razor、SignalR、EntityFrameworkCore等


其他推荐