首页 > 图书中心 >图书详情
ASP.NET Core应用开发
作者:[美] James Chambers,David Paquette,Simon Timms著 杜伟 涂曙光 柴晓伟 译
丛书名:开源.NET生态软件开发
定价:68元
印次:1-2
ISBN:9787302479901
出版日期:2017.09.01
印刷日期:2018.09.21
动手掌握ASP.NET Core从架构到部署的方方面面 《ASP.NET Core应用开发》通过一个跨平台Web应用程序 的开发、部署与管理的完整流程,指导你学习ASP.NET Core。 你将掌握微软革命性的开源ASP.NET Core技术,并学习如 何将MVC、Docker、Azure Web Apps、Visual Studio、C#、 JavaScript和Entity Framework融汇贯通。通过与一个虚拟的 Alpine Ski House开发团队并肩工作,你将见证四个全新迭代的 完整开发过程。你将看到这个团队是如何架构和设计他们的软 件,响应用户的反馈,以及完成开发、测试、部署、维护和重 构等各个环节的工作。 最终,你将了解如何更快、更稳定地创建一流水准的软件。 三位顶尖微软MVP展示了如何: ◆ 使用ASP.NET Core和开源框架构建强大的跨平台应用程序 ◆ 超越MVC,构建一个完整的ASP.NET Core应用程序 ◆ 从项目开始的第一天就开始生成并发布版本,快速部署迭 代中的产品 ◆ 集成Azure支持,获得云服务的扩展能力 ◆ 在Linux上运行或开发跨平台的解决方案 ◆ 使用Docker获得一致的开发环境 ◆ 使用Entity Framework Core 1.0访问数据 ◆ 使用更新的Razor视图引擎生成HTML视图 ◆ 使用身份确保安全性和提供权限管理 ◆ 使用依赖注入提高可测试性与可维护性 ◆ 在ASP.NET Core环境中使用和管理JavaScript ◆ 使用SASS编写可维护的靓丽CSS ◆ 充分利用标签助手和其他可重用组件 ◆ 设计、组织并重构应用程序,灵活应对变化
more >前 言 ASP.NET Core MVC是微软面向 .NET开发者的最新的Web框架,它是如今广为人知的ASP.NET MVC框架的下一代,并致力于开启跨平台开发、部署的能力。它广泛利用了各种各样的开源库,当然,它本身也是开源的。ASP.NET Core MVC帮助开发者独立思考关于业务逻辑、路由、服务以及视图的实现,并提供了一套新的配置和扩展系统。它使用了C#编程语言,以及Razor视图引擎。不管你是一个经验丰富的.NET开发者,还是一个新手,使用ASP.NET Core MVC来构建项目应该都是不错的开端。 本书展示了一个重构项目的最初几个迭代版本,该项目是由一个虚构公司Alpine Ski House的团队重新开发的。每一章都介绍了一些在开发过程中团队所遇到的挑战,以及他们是如何克服这些难关的。除了每章前面的一个小故事之外,本书深入介绍了从ASP.NET Core MVC的特性,到构建、维护和部署应用程序所使用的相关工具。 除故事片段和关于ASP.NET Core MVC的技术内容之外,本书还讨论了新版的Entity Framework、包管理系统,以及其他在Web开发领域中流行的周边工具。除相关技术内容的介绍外,本书也附带了一个项目——正是Alpine Ski House的开发者们构建的那个项目。 本书读者对象 本书以一个程序员的视角,贯穿了使用ASP.NET Core开发一个全新应用程序,并将其发布到互联网上的所有必经步骤。不过仍然有相当多的程序员还没有接触过Web开发,或者还停留在Webforms时代,很少接触到如今全新的各种工具。本书将帮助他们掌握这些技巧、树立信心来跟上脚步,使用新兴的框架来构建现代应用程序。本书将帮助读者探索应用程序的架构,部署并构建适用于云端的应用程序。 阅读本书的前提条件 本书的读者需要拥有中高级的程序开发能力、熟练掌握C#、拥有Web开发的背景知识,并了解Visual Studio的基本功能。如果了解上一个版本的MVC会更有帮助,不过它不是必需的。熟悉使用命令行界面进行工作也是个加分项。在阅读本书后,你将有能力构建一个真实的、由关系型数据库驱动的应用程序,并可以将其部署在基于云端的基础架构。 本书可能不适合…… 如果你是经验丰富的高级ASP.NET MVC开发者,始终在密切关注甚至参与了ASP.NET Core MVC开发的话,那么本书可能不太适合你。 本书结构安排 本书创新性地从开发者的视角出发,贯穿了一个完整应用程序开发的各个迭代环节。书中不仅包含了技术内容,也涵盖了如何从错误中吸取教训、根据用户的反馈进行调整,从零开始,逐步构建出一个完整的产品。 本书分为如下四个部分: ● 第Ⅰ部分:“Alpine Ski House”。介绍了一些背景知识,构建了示例应用程序,并引入了贯穿本书的所有虚构角色。 ● 第Ⅱ部分:“迭代回顾:千里之行”。关注能够让应用程序运行起来的必要特性,对构建流水线进行配置,使配置实时生效,从而使整个团队都关注到项目进度。 ● 第Ⅲ部分:“迭代回顾:激流勇进”。关注一些核心的特性能够在示例程序的基础上加上所需的业务逻辑。该部分中,我们使用了 Entity Framework Core来进行数据访问、使用 Razor 创建视图,还介绍了配置、日志、安全、用户管理,以及依赖注入。 ● 第Ⅳ部分:“迭代回顾:最后冲刺”。介绍了JavaScript、依赖管理,以及在前文介绍的基础上进行构架的内容。 在附录中包含了一些重要主题,比如测试、重构和扩展能力。 寻找本书最佳切入点 本书中的不同章节涵盖了ASP.NET Core 框架中相关的各种技术。根据你的需要,以及你对微软技术栈的掌握程度,你可能会需要重点关注本书中某些特定的领域。可以通过如下表格来决定你阅读本书的最佳切入点: 如果你…… 阅读建议 是ASP.NET Core开发的新手,或者已经是ASP.NET Core的开发者 关注第Ⅰ、第Ⅱ和第Ⅲ部分,或者按照顺序阅读整本书 熟悉之前版本的ASP.NET 如果你只需要关注核心内容,可以略过前两章,并通读本书中的其他章节,以了解新的技术 对客户端开发感兴趣 阅读第Ⅳ部分的第15、16、17章,略读第20章中关于 JavaScript 服务的介绍 对跨平台开发感兴趣 整本书的内容都可应用在跨平台开发中,不过第8、9章的主题特别涉及了该内容 本书中的大部分章节都包括了动手示例,通过它们你可以练习刚刚学到的内容。不论你关注的是哪部分内容,请在你的系统中下载并安装示例应用程序。 本书的约定和特色 本书在介绍内容时使用了一些约定,了解它们可以让阅读变得更易理解。 ● 本书中的代码是面向 C# 程序员的,使用的语法涵盖了 HTML、CSS、SCSS和Razor。 ● 在两个按键之间使用加号(+)表示同时按下两个键。比如“按下Alt + Tab”的意思是你需要在按住Alt键的同时,按下Tab键。 ● 在两个或多个菜单项之间的竖线符号(比如文件 | 关闭),意思是你需要先选择第一个菜单或菜单项,然后再选择下一个,以此类推。 系统要求 为了运行本书的示例应用程序,你需要如下的软、硬件配置: ● .NET Core 1.0及以上版本,可以跨平台安装,来自https://dot.net。 ● 选择你的代码编辑器。我们使用的是Windows上的Visual Studio 2015(任何一个版本都可以)及以上版本,或者也可以使用Windows / Mac / Ubuntu Linux上的Visual Studio Code。 ● SQL Server LocalDB(包含在Windows中的Visual Studio 2015及以上版本中)。对于Linux或者Mac的用户,你需要访问一个位于其他Windows机器或者MicrosoftAzure上的SQLServer数据库。 ● 电脑的处理器至少是1.6GHz。 ● 至少1GB内存。 ● 4GB剩余磁盘空间。 ● 互联网连接(用于下载软件和示例项目)。 根据你的Windows配置,可能需要本地管理员权限来安装或配置Visual Studio 2015。 下载:示例项目 本书中大部分章节都包含了来自这个示例项目中的代码片段,该项目可以在GitHub上找到: https://github.com/AspNetMonsters/AlpineSkiHouse 按照GitHub上的指示下载并运行该示例代码。 注意: 除了示例项目之外,你的系统还需要安装.NET Core 1.0及以上的版本。 勘误表、更新及内容支持 我们尽了最大的努力来确保本书内容的正确性。你可以访问本书的更新(以勘误表的形式记录了相关的错误和纠正内容): https://aka.ms/ASPCoreAppDev/errata 如果你发现了一个尚未列出的错误,请使用该页面提交错误。 可以在网站https://aka.ms/ASPCoreAppDev/downloads中下载所有的示例代码以及完整的应用程序。 请注意上述地址并不提供对微软的软、硬件产品的支持。如果需要这些支持,请访问http://support.microsoft.com。 期待您的反馈 在 MS Press,您的满意是我们首要的目标,您的反馈是我们最有价值的资产。请通过如下地址告诉我们你对本书的看法: http://aka.ms/tellpress 我们知道你公务繁忙,所以只保留了非常简短的几个问题。你的答案将会直接发送给MS Press的编辑(不需要提供你的个人信息)。非常感谢您的反馈! 保持关注 让我们持续保持交流,我们的Twitter是http://twitter.com/MicrosoftPress。
more >