新書推薦:
《
明式家具三十年经眼录
》
售價:HK$
524.2
《
敦煌写本文献学(增订本)
》
售價:HK$
221.8
《
耕读史
》
售價:HK$
109.8
《
地理计算与R语言 [英] 罗宾·洛夫莱斯 [德]雅纳·蒙乔 [波兰] 雅库布·诺沃萨德
》
售價:HK$
121.0
《
沈括的知识世界:一种闻见主义的实践(中华学术译丛)
》
售價:HK$
87.4
《
大思维:哥伦比亚商学院六步创新思维模型
》
售價:HK$
72.8
《
宏观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:HK$
155.7
《
UE5虚幻引擎必修课(视频教学版)
》
售價:HK$
110.9
編輯推薦:
? 让读者了解所有新的和改进的ASP.NET Core功能
? 开发用户期望的功能丰富、灵活且响应敏捷的设计
? 描述使用ASP.NET Core进行前端开发的*、*实践
? 详述如何大限度地利用具有非原生功能的第三方库
? 解释如何组合应用ASP.NET Core与不同的工具、框架和库
? 探讨Bower依赖关系、gulp构建系统与ASP.NET Core的使用
內容簡介:
让读者了解所有新的和改进的ASP.NET Core功能 ? 开发用户期望的功能丰富、灵活且响应敏捷的设计 ? 描述使用ASP.NET Core进行前端开发的*、*实践 ? 详述如何大限度地利用具有非原生功能的第三方库 ? 解释如何组合应用ASP.NET Core与不同的工具、框架和库 ? 探讨Bower依赖关系、gulp构建系统与ASP.NET Core的使用
關於作者:
Simone Chiaretta现居比利时布鲁塞尔是一位网页架构师和开发者,他乐于分享自己20多年来在ASP.NET Web开发和其他Web技术方面的开发经验和知识。Simone成为ASP.NET领域微软MVP已有8年,撰写了几本关于ASP.NET MVC的书籍包括Wrox出版的Beginning ASP.NET MVC 1.0和Whats New in ASP.NET MVC 2,以及Syncfusion出版的OWIN Succinctly和ASP.NET Core Succinctly,并为在线开发者门户例如Simple Talk做出了贡献。Simone还与他人共同创立了意大利ALT.NET用户组ugialt.NET,并且是在米兰召开的许多会议的共同组织者。
读者可在Simone的博客http:codeclimber.net.nz上阅读他的想法和开发技巧。
在不编写代码和博客文章或是不参与全球.NET社区活动时,Simone喜欢研究Arduino一种开源硬件、无人机和水下机器人,并且正在接受培训,以在2018年完成他的第一台钢铁侠。他是在布鲁塞尔工作的众多外籍专家中的一员,在那里他领导欧盟理事会欧盟的执政机构之一公共网站的开发团队。
目錄 :
目 录
第1章 ASP.NET Core MVC的新变化 1
1.1 熟悉软件名称 2
1.1.1 ASP.NET Core 2
1.1.2 .NET Core 2
1.1.3 Visual Studio Code 3
1.1.4 Visual Studio 2017 3
1.1.5 本书涵盖的版本 3
1.2 微软.NET Web堆栈简史 4
1.2.1 ASP.NET Web Forms 4
1.2.2 ASP.NET MVC 5
1.2.3 ASP.NET Web API 5
1.2.4 OWIN和Katana 6
1.2.5 ASP.NET Core和.NET Core的出现 7
1.3 .NET Core 7
1.3.1 .NET Core入门 8
1.3.2 dotnet命令行 8
1.4 ASP.NET Core介绍 9
1.4.1 ASP.NET Core Web应用程序项目概述 9
1.4.2 OWIN 13
1.4.3 ASP.NET Core应用程序剖析 16
1.5 ASP.NET Core的重要新特性 19
1.5.1 环境 19
1.5.2 依赖关系注入 21
1.5.3 日志记录 24
1.5.4 配置 26
1.6 部分ASP.NET Core中间件简介 31
1.6.1 诊断 31
1.6.2 提供静态文件服务 32
1.6.3 应用程序框架 33
1.7 ASP.NET Core MVC 34
1.7.1 在ASP.NET Core中使用MVC框架 34
1.7.2 在控制器中使用依赖关系注入 36
1.7.3 视图组件 38
1.7.4 标签帮助程序 40
1.7.5 Web API 45
1.8 本章小结 46
第2章 前端开发者工具集 47
2.1 需要了解的其他几种语言 48
2.1.1 Node.js 49
2.1.2 JSON 50
2.1.3 Sass和Less 51
2.1.4 JavaScript的未来 53
2.1.5 TypeScript 54
2.2 JavaScript框架 55
2.2.1 Angular 56
2.2.2 Knockout 58
2.2.3 React 60
2.2.4 jQuery 63
2.3 CSS框架 63
2.3.1 Bootstrap 63
2.3.2 Primer CSS 66
2.3.3 Material Design Lite 66
2.3.4 Semantic UI 67
2.4 包管理器 68
2.4.1 NuGet 68
2.4.2 Bower 70
2.4.3 NPM 71
2.4.4 文件夹结构 71
2.5 任务运行程序 72
2.6 本章小结 74
第3章 Angular简析 75
3.1 Angular的基本概念 76
3.2 Angular的实现语言 78
3.3 建立一个Angular项目 79
3.3.1 使用在线编辑器 79
3.3.2 利用快速入门示例 80
3.3.3 使用Angular-CLI工具 80
3.4 Angular应用程序结构 81
3.4.1 应用程序入口 81
3.4.2 根模块 82
3.4.3 根组件 84
3.4.4 主HTML页面 85
3.5 数据绑定 86
3.5.1 插值 86
3.5.2 单向绑定 87
3.5.3 事件绑定 88
3.5.4 双向绑定 88
3.6 指令 89
3.7 服务与依赖注入 90
3.8 多重组件 92
3.9 输入与输出属性 95
3.10 与后端程序交互 99
3.10.1 使用Http模块 100
3.10.2 处理RxJS Observable 101
3.11 Angular与ASP.NET MVC的结合应用 105
3.12 Visual Studio 2017对Angular的支持 116
3.12.1 代码片段 116
3.12.2 TypeScript文件中的智能提示 118
3.12.3 HTML文件中的智能提示 119
3.13 本章小结 120
第4章 Bootstrap入门 121
4.1 Bootstrap简介 122
4.1.1 安装Bootstrap 122
4.1.2 Bootstrap的主要特性 125
4.2 Bootstrap样式 125
4.2.1 网格系统 125
4.2.2 排版 130
4.2.3 表格 131
4.2.4 表单 132
4.2.5 按钮 134
4.3 组件 134
4.3.1 字体图标 134
4.3.2 下拉菜单 135
4.3.3 输入组 137
4.3.4 导航 139
4.3.5 其他组件 145
4.4 JavaScript 146
4.4.1 标签页内容 146
4.4.2 模态对话框 148
4.4.3 工具提示和弹出对话框 150
4.5 使用Less定制Bootstrap 152
4.5.1 通过网站定制 152
4.5.2 使用Less定制 154
4.6 Visual Studio 2017和ASP.NET Core中的Bootstrap支持 155
4.6.1 Bootstrap Snippet Pack 157
4.6.2 Glyphfriend 158
4.6.3 ASP.NET Core的标签帮助程序 159
4.7 本章小结 160
第5章 使用NuGet和Bower管理依赖关系 163
5.1 共同概念 164
5.2 NuGet 165
5.2.1 使用NuGet获取软件包 166
5.2.2 发布自己的软件包 170
5.3 NPMNode.js包管理器 172
5.3.1 安装NPM 172
5.3.2 NPM的用法 173
5.3.3 软件包的安装位置 176
5.4 Bower 176
5.4.1 安装Bower 177
5.4.2 使用Bower获取软件包 177
5.4.3 软件包的安装位置 179
5.4.4 创建自己的软件包 180
5.5 本章小结 180
第6章 使用gulp和webpack构建应用程序 183
6.1 前端构建系统的作用 184
6.2 gulp深度介绍 185
6.2.1 gulp入门 185
6.2.2 gulpfile.js文件 186
6.2.3 典型gulp构建文件 188
6.2.4 更多gulp技巧 190
6.3 webpack介绍 197
6.3.1 webpack的主要概念 197
6.3.2 应用webpack 197
6.3.3 webpack的其他功能 202
6.4 Visual Studio 2017和构建系统 203
6.4.1 Bundler & Minifier扩展 203
6.4.2 任务运行程序资源管理器 207
6.4.3 将智能提示用于gulp 208
6.5 本章小结 209
第7章 部署ASP.NET Core 211
7.1 ASP.NET Core的新托管模型 212
7.2 在自有IIS环境上的安装 213
7.2.1 确保一切就绪 213
7.2.2 安装AspNetCoreModule 215
7.2.3 通过命令行发布应用程序 216
7.2.4 创建网站 217
7.2.5 通过Visual Studio发布应用程序 218
7.3 在Azure上部署 220
7.3.1 使用Web部署从Visual Studio部署到Azure 220
7.3.2 利用git持续部署到Azure 224
7.4 部署到Docker容器 228
7.4.1 安装Docker支持 228
7.4.2 发布Docker映像 231
7.5 本章小结 233
第8章 非Windows环境中的开发 235
8.1 在macOS上安装.NET Core 236
8.2 在macOS上构建第一个ASP.NET Core应用程序 237
8.2.1 使用dotnet命令行界面 237
8.2.2 使用Yeoman 240
8.3 Visual Studio Code 243
8.3.1 设置Visual Studio Code环境 243
8.3.2 Visual Studio Code的开发特性 244
8.3.3 OmniSharp 250
8.3.4 其他IDE 251
8.4 使用命令行工具 251
8.5 本章小结 252
第9章 综合运用 253
9.1 构建一个铁人三项赛成绩网站 254
9.2 构建后台网站 254
9.2.1 设置Entity Framework 259
9.2.2 构建CRUD界面 264
9.3 构建注册页面 269
9.4 展示实时成绩 273
9.4.1 创建Angular客户端程序 274
9.4.2 构建Web API 279
9.5 使用物联网设备连接 284
9.6 部署 288
9.7 本章小结 290
內容試閱 :
前 言
曾几何时,后端开发人员和前端开发人员从事着迥异的工作。后端开发人员使用服务器端语言编写用于呈现页面的代码,前端开发人员则使用JavaScript编写具有一定交互功能的代码,并使用CSS美化Web页面。
几年之前,随着单页面应用程序SPA的登场,JavaScript不再局限于增加一定的交互性,还能构建应用程序本身。后端开发人员必须扩展自己的技能储备,以纳入前端开发人员的典型工具,例如特定的JavaScript框架,以及CSS的基础运用。
《Web前端开发》的目标是阐释前端开发人员的常用工具,以及如何有效地将它们与ASP.NET Core MVC组合运用。
为何Web开发需要通晓多种语言的开发人员
在日常生活中,多语言者polyglot是指了解并能使用多种语言的人,他们不需要精通双语或多语,但能较熟练地使用第二种或更多种语言。
何谓多语言开发人员?是指一名了解超过一种编程语言或框架,能在同一个程序中使用它们的开发人员。
从IT行业发端之日开始,应用程序主要是使用一种编程语言编写的,笔者个人是从C开始的,然后转向Visual Basic,在Cold Fusion上着陆,使用过JavaScript早期版本在客户端和服务器端均用过,进行了一点Java开发,最终固定在.NET平台上,但每段时间里只使用一种编程语言。
那时是大型企业级框架的时代,厂商试图向他们的语言或框架中塞入应用程序可能需要的一切特性。微软曾经试图将开发人员与Web实际使用的语言HTML和JavaScript隔离开来,推出了ASP.NET Web Forms和ASP.NET Ajax框架。如果读者回顾自己在IT行业的经历,可能会找到许多类似的例子。
不过最近出现了一种新趋势,走向相反的方向,IT业界认识到,或许有的语言比其他语言更适于完成某些特定任务,人们使用多种语言开发应用程序,而非试图强行用一种语言包打天下。
现在我们已经统一了多语言开发人员一词的定义,接下来让我们看看,作为一名多语言开发人员有什么优势。
工欲善其事,必先利其器:在工作中选择合适的工具
多语言开发的第一个也是最重要的好处是能够选择完成工作的最适合工具,而不必因为语言或框架不支持某个指定功能而不得不做出妥协。
例如,使用微软Ajax框架时,将受限于它提供的功能,而直接使用JavaScript,则可拥有该语言的全部灵活性。
作为一名Web开发人员,必须了解HTML语言,但只要使用Visual Studio的开发界面,仅拖曳工具箱中的工具,即可构建Web应用程序。显然,此时无法像直接编写HTML一般,拥有彻底的控制力。
所以,在某种程度上,每个Web开发人员都是多语言开发人员。
另一个例子是Sass在Visual Studio 2015中的集成。几年前Ruby社区提出了CSS样式预处理的创意,微软将其原始版本集成到其IDE中,而Sass正是预处理CSS样式的合适工具。
他山之石:交叉思维的优势
通晓多种语言的第二个好处是能从厂商和开源社区在其他语言的工作中获取灵感;在无法直接使用时,能够改造或开发适合自己的版本。
ASP.NET MVC是这方面的一个绝佳例子。十年前,当时流行的语言是Ruby,这要归功于其简单的Web框架Ruby on Rails,它建立在模型-视图-控制器模式之上。.NET开发人员社区从中获得灵感,并开始同样基于MVC模式构建.NET Web框架。这导致微软构建了ASP.NET MVC框架,该框架是《Web前端开发》介绍的主要内容之一。
居安思危:扩展你的安乐窝
如果不只考虑技术方面,使用多种语言和框架还带来了一项额外益处:它会迫使你走出现有的安乐窝,使你的适应性更强,并打破始终循规蹈矩地工作带来的厌烦情绪。毫不奇怪,有许多开发人员对尝试新事物犹豫不决,并且更喜欢使用他们最熟悉的工具、框架和语言,尽管这样做会牺牲灵活性和控制能力。但如果你正在阅读这《Web前端开发》,可能不是其中之一。因此,请准备好在《Web前端开发》的其余部分,学习源自Microsoft .NET领域之外的新语言和框架。一开始,你会走出你的安乐窝。而当学习完成时,你会发现安乐窝已经变得更大、更具回报。
《Web前端开发》读者对象
《Web前端开发》的目标读者是拥有ASP.NET MVC知识无论是最新版本还是早期版本的框架的人员的Web开发人员,以及希望学习使用前端开发中流行工具和框架的人员。此外,《Web前端开发》也可以作为已经采用某些前端工具和框架,但希望通过Visual Studio 2017引入的集成功能更高效地使用它们的开发人员的指南。
《Web前端开发》涵盖的内容
《Web前端开发》主要介绍使用ASP.NET Core MVC进行前端开发。除概述微软的最新框架外,还涵盖一些最受欢迎的前端框架和工具,如Angular、Bootstrap、NuGet、Bower、webpack、gulp和Azure等。
除框架外,《Web前端开发》还展示了Visual Studio 2017中面向前端开发的新特性,以及如何不使用该软件,而改用标准文本编辑器例如Mac OS X上的Visual Studio Code开发ASP.NET Core MVC应用程序。
这并不是一本面向初学者的书籍,所以笔者假设读者已经掌握HTML、JavaScript和CSS的基础知识,了解C#或VB.NET请记住所有示例都将使用C#编写,并且使用过ASP.NET MVC和Web API。
《Web前端开发》的组织结构
为帮助读者确定这《Web前端开发》是否适合自己,下面将简要解释《Web前端开发》的结构和每章的内容。
● 第1章ASP.NET Core MVC的新变化:介绍使用ASP.NET Core、ASP.NET Core MVC以及.NET中的所有新功能和新开发方法。对于那些已经了解ASP.NET MVC最新版本的读者来说,可通过该章进行复习;对于新人而言,可通过该章来简单了解这个最新版本。
● 第2章前端开发者工具集:开始探索前端开发人员的世界,介绍使用的工具类别,并介绍每类工具和框架中的佼佼者。
● 第3章Angular简析:介绍Google的JavaScript框架Angular,阐释其中的主要概念,以及Visual Studio 2017附带的新的Angular工具。
● 第4章Bootstrap入门:介绍Twitter的CSS框架Bootstrap,并展示如何使用它构建自适应网站。该章还讨论Less一种CSS预处理语言,以及它与Visual Studio 2017的集成。
● 第5章使用NuGet和Bower管理依赖关系:管理所有前端和服务器端的组件可能是件非常痛苦的工作,但幸运的是,存在一些组件管理器,能用于大大简化工作。可使用NuGet工具管理.NET服务器端依赖关系,而在客户端使用Bower。该章介绍如何与Visual Studio 2017结合使用这些工具,以及如何打包库文件,以便在公司内部共享或与外界共享。
● 第6章使用gulp和webpack构建应用程序:介绍gulp和webpack,这是两种可使用JavaScript进行编程的构建系统。该章还将介绍它们与Visual Studio 2017的集成,以及ASP.NET开发中使用的一些常用秘诀。
● 第7章部署ASP.NET Core:应用程序准备就绪后,即可进行部署。该章使用Azure展示集成了测试、构建和部署操作的持续流程。
● 第8章非Windows环境中的开发:.NET Core堆栈的一个主要特性是它也可在Linux和Mac操作系统上运行。微软开发了一个跨平台的IDE,但也有其他选择。该章将介绍如何在Mac上完成所有ASP.NET开发。
● 第9章综合运用:《Web前端开发》的最后一章将所有概念融会贯通,详解构建现代化、响应式网站所需的所有步骤,包括通过OAuth与第三方服务和认证相集成。
学习《Web前端开发》需要准备的条件
这《Web前端开发》中有很多示例,因此体验它的最好方法就是在电脑上亲自试一试。为此,需要安装Windows 7810操作系统和Visual Studio 2017社区版。
ASP.NET Core MVC也可以在Windows、Mac OS X或Linux上的任何文本编辑器中开发。微软还开发了一款名为Visual Studio Code的跨平台文本编辑器。在第8章中学习在Windows之外进行开发时需要使用该工具。当然也可以使用任何其他兼容的文本编辑器,但使用的命令和操作界面与Visual Studio Code中的不同。
约定
为了帮助读者准确掌握学习内容,获得最大收益,《Web前端开发》使用了一些约定。
警告
包含与前后文直接相关的重要、不可遗忘的信息。
注意
用于指示对当前讨论内容的注释、提示、技巧、旁白等信息。
代码使用两种格式:
对于大多数示例代码使用不突出显示的等宽字体。
使用粗体强调该代码在当前上下文中特别重要,或体现其与前文代码片段的差异。
源代码
在完成《Web前端开发》中的示例时,可以选择手动输入所有代码,也可以使用《Web前端开发》附带的源代码文件。Wrox图书使用的所有源代码均可从www.wrox.com下载,具体到《Web前端开发》的代码下载链接则位于以下网址的Download Code下载代码选项卡中:
www.wiley.comgofrontenddevelopmentasp.netmvc6
你也可以通过ISBN在www.wrox.com上搜索图书《Web前端开发》的ISBN为978-1-119-18131-6以查找代码。要获得所有当前Wrox书籍的完整代码下载列表,请访问www.wrox.comdynamicbooks download.aspx。
www.wrox.com上的大部分代码都以.ZIP、.RAR归档或适用相应平台的类似归档格式进行压缩。下载代码后,只需要使用相应的压缩工具对其进行解压缩即可。
另外,也可扫描《Web前端开发》封底的二维码下载源代码。
注意
由于许多书籍名称相似,你可能会发现使用ISBN进行搜索最简单,《Web前端开发》英文版的ISBN是978-1-119-18131-6。
勘误表
我们尽一切努力确保文本或代码中没有错误。但毕竟人非圣贤,难免会出现错误。如果在我们的某《Web前端开发》中发现错误,如拼写错误或代码错误,我们将非常感谢你的反馈。通过发送勘误表,可能能够帮助其他读者,使他们免于在挫折沮丧中浪费数小时,同时还能帮助我们提供更高质量的信息。
要查找《Web前端开发》的勘误表,请访问www.wiley.comgo frontenddevelopmentasp.netmvc6,然后单击Errata链接。在这个页面上,可以查看所有已经提交给《Web前端开发》并由Wrox编辑发布的勘误表。
如果未在Book勘误页面上发现你发现的错误,请访问www.wrox.comcontacttechsupport.shtml,并填写表格以向我们发送找到的错误。我们会检查这些信息,在适当的时候在《Web前端开发》的勘误页上发布信息,并在《Web前端开发》后续版本中予以更正。