热门关键字:  听力密码  听力密码  新概念美语  单词密码  巧用听写练听力
图书信息

Web技术开发教程(基于.NET开源MVC框架)

中国水利水电出版社
    【作 者】王合闯 韩红玲 王青正 陈海蕊 【I S B N 】978-7-5226-1805-0 【责任编辑】鞠向超 【适用读者群】本专通用 【出版时间】2023-11-01 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】396 【千字数】634 【印 张】24.75 【定 价】79 【丛 书】普通高等教育新工科系列教材 【备注信息】
图书详情

    本书以一个程序员的视角,讲解了使用ASP.NET Core开发一个全新应用程序,并将其发布到互联网上的所有必经步骤。本书详细讲解HTML、CSS和JavaScript等Web技术基础,以及贯穿整个网站开发过程中的基本技术和设计思想,最终以测试和发布结束,以期帮助读者掌握Web编程技术,探索应用程序的架构,并使用新兴的框架来构建现代应用程序和适用于云端的应用程序。

    本书通过介绍跨平台Web应用程序的开发、部署与管理的完整流程,指导读者学习动态网站的开发与设计,使其掌握开源ASP.NET Core技术,并知道如何将MVC、Docker、Visual Studio、C#和Entity Framework融会贯通,以及完成开发、测试、部署和维护等各个环节的工作。

    内容全面,讲解细致

    由浅入深地详细讲解前端页面编程、MVC 架构、工程实例和开发流程。

    理实一体,突出应用

    案例引导,任务驱动,突出实践,体现“成果为导向,学生为中心”的教育理念。

    资源丰富,方便教学

    配套微课、电子课件、源代码、习题答案等资源,方便师生教与学。

    本书创新性地从开发者的视角出发,讲解了一个完整应用程序开发过程的各个迭代环节。

    本书分3篇16章进行介绍。

    第1篇 HTML、CSS和JavaScript静态网站基础

    本篇介绍的是动态网站开发前端人员需要掌握的基本技能,涵盖HTML、CSS和JavaScript。

    第1章介绍HTML文档的基本结构、语法和DOM模型,以及HTTP方法与状态消息、API技术等,使没有Web项目开发经验的读者掌握HTML的语法基础。

    第2章介绍CSS样式表的基础知识,涵盖CSS样式表中的基本概念、常用属性、选择器和框模型,以及应用CSS样式表的典型案例。

    第3章介绍前端框架中的重量级应用JavaScript的基本语法和用途较为广泛的jQuery技术,以期引导读者进行基本前端页面编程。

    第2篇 MVC Web动态网站开发技术基础

    本篇介绍的是动态网站开发后端人员需要掌握的MVC模型开发技术。

    第4章介绍MVC模型与ASP.NET Core MVC、正确的开发理念,以及进行团队协助开发时的版本控制。

    第5章介绍MVC模型的Model与数据访问,主要包括数据库开发模式、创建数据模型和EF Core框架,并采用T4模板创建了一个具有CRUD功能的基本网站,使未使用过框架和没有MVC模型开发经验的读者对采用框架技术开发MVC网站的基本技能有一个初步的了解。

    第6章介绍MVC模型的View数据呈现技术,通过布局页、局部视图和视图组件来介绍可复用模块下的Views视图开发技术及视图中常用的HTML助手和Tag助手技术。

    第7章介绍视图中使用的编程语言Razor及基于Razor语法的另类网页开发技术Web Assembly的Blazor技术。

    第8章介绍MVC模型中的Controllers和路由技术,通过具体分析Controllers、Actions 和Action Results等技术和行为为后端开发人员完成复杂网站系统的开发奠定基础,并介绍了框架中的路由、过滤器以及依赖注入和控制器的相关技术。

    第9章介绍后台开发过程中常用的内置对象和状态管理技术,包括HttpContext对象、页面状态对象等。

    第3篇 网站设计开发中的高级论题

    本篇从宏观角度来论述网站开发中的设计和开发思想、网站中用到的实用技术、网站的安全和部署方法。

    第10章介绍网站针对第三方开发的远程调用接口技术Web API,以及WebSocket、SignalR和gRPC等高级论题。

    第11章介绍网站项目规划与设计基本技能,如如何规划公共类库、网站的功能区域(Areas)划分技术、保证整体网站风格的一致性、大规模并发访问下的网站优化前后台技术。

    第12章介绍网站中的安全技术,包括认证与授权、网站中的对称和非对称加密技术,涵盖DES、AES、数字签名和非对称信息传输技术。

    第13章介绍网站中的常见开发技术,如控制反转与依赖注入、中间件、处理静态文件等。

    第14章介绍验证码、图片水印、二维码和文件上传等技术及其原理。

    第15章介绍网站开发和交付时用到的测试技术,如单元测试、集成测试和负载压力测试。这里只是以简单的示例方式介绍了网站交付前应当进行的测试。

    第16章介绍网站的部署,提供了Kestrel、IIS和Docker三种部署ASP.NET Core网站技术,读者可以根据场景需要选择适合自己的部署方法以运行Web动态网站。在大规模网站访问系统下,运行动态网站的节点往往不止一个,具有相同运行内容的网站节点需要负载均衡,16.4节就详细介绍了如何进行镜像节点的Nginx负载均衡。

    本书特色

    (1)强化工程教育理念。

    创新性地从开发者的视角出发,采用实际工程案例,逐步讲解Web开发中用到的技术、理论和方法。

    (2)多资源的新生态教材,翻转课堂培养模式。

    本课程拟建设集课件、微视频、GitHUB、微信公众号、QQ群、在线平台、专业助教等多资源的新生态课程体系,打造一本经典教材,有效引导读者自主学习,培养深度学习和创新能力,利于翻转课堂教学模式的开展。

    (3)项目驱动式+技术浸入式。

    引入工程项目中的真实案例,设计培养自主创新能力的实验项目,以项目为驱动,带动相关技术的深入学习,设身处地为读者尤其是初学者,优化并定制学习内容,杜绝官方文档的搬运,让读者能轻松自学,在完成项目的同时深入理解技术的原理和应用,进而达到活学活用。

    本书的创新点

    (1)引入现代Web开发前沿技术。

    本书融入Web编程领域最新发展Web API、SSO、负载均衡、虚拟化等科技前沿技术,以培养解决复杂工程问题的能力,满足新工科课程培养目标的需求。

    (2)现代Web编程与开发的新模式。

    本书采用MVC模型,引入关注点分离和以习惯替换配置等现代开发理念,让学生掌握代码优先的Web编程开发新模式。

    (3)开启Web编程教学的新理念。

    课程采用理论教学和实践教学相结合的策略,以项目驱动的方式培养动手实践的能力。本书提供完整的代码和视频教学,以独立示例的形式体现现代Web开发技术中的关键点,让学生通过反复观摩、活学活用来构建具有创新性的独立Web应用,培养独立解决问题的能力。

    本书由华北水利水电大学的王合闯、韩红玲、王青正和中原工学院的陈海蕊编写,其中王合闯编写第4章至第10章并审读全书,韩红玲编写第1章至第3章,王青正编写第11章至第13章,陈海蕊编写第14章至第16章。周莊、王羽、王泽雨负责本书配套代码、视频及在线资源的整理工作。在本书编写过程中编者参考了一些文献资料,在此向其作者表示衷心感谢。

    由于编者水平有限,书中不妥甚至错误之处在所难免,敬请读者批评指正(E-mail:hanhongling@ncwu.edu.cn)。

    编 者

    2023年6月

    前言
    第1篇 HTML、CSS和JavaScript静态网站基础

    第1章 页面描述语言 2
    1.1 HTML文档 2
    1.1.1 HTML文档的创建与查看 2
    1.1.2 HTML文档结构 3
    1.2 HTML语法基础 6
    1.2.1 文本 6
    1.2.2 表格与布局 13
    1.2.3 图像 17
    1.2.4 媒体 21
    1.2.5 表单和输入 26
    1.2.6 框架 30
    1.3 字符、URL和颜色 32
    1.3.1 字符实体 32
    1.3.2 URL 33
    1.3.3 颜色 34
    1.4 HTTP的方法与状态消息 36
    1.4.1 HTTP的GET和POST方法 36
    1.4.2 HTTP的状态消息 37
    1.5 HTML5 37
    1.5.1 HTML5简介 37
    1.5.2 HTML5中的新元素 39
    1.5.3 从HTML 4迁移至HTML5 41
    1.5.4 样式指南和代码约定 41
    1.6 API 41
    1.6.1 地理定位 41
    1.6.2 本地存储 42
    1.6.3 拖放 45
    1.6.4 应用程序缓存 47
    1.6.5 Web Worker 48
    1.6.6 服务器发送事件 50
    1.6.7 WebSocket 52
    本章小结 53
    习题 53
    第2章 页面样式 54
    2.1 CSS样式表 54
    2.1.1 什么是CSS 54
    2.1.2 CSS与HTML的联系 54
    2.1.3 在HTML中引用CSS的方式 55
    2.2 CSS中的常用属性 56
    2.2.1 字体 56
    2.2.2 颜色 57
    2.2.3 长度 57
    2.2.4 布局 57
    2.3 CSS选择器 58
    2.3.1 基本选择器 58
    2.3.2 高级选择器 61
    2.4 CSS框模型 64
    2.5 典型案例 65
    2.5.1 通过filter滤镜控制图片样式 65
    2.5.2 通过CSS控制字体样式 67
    2.5.3 通过CSS控制链接样式 68
    本章小结 69
    习题 69
    第3章 页面交互 70
    3.1 JavaScript 70
    3.1.1 JavaScript的应用方式 70
    3.1.2 JavaScript语言基础 71
    3.1.3 程序结构 78
    3.1.4 DOM操作 80
    3.2 jQuery 83
    3.2.1 jQuery概述 83
    3.2.2 jQuery对象 85
    3.2.3 jQuery选择器 85
    3.2.4 jQuery中的DOM操作 90
    3.2.5 jQuery中的事件 97
    3.2.6 jQuery中的常用方法 103
    3.2.7 jQuery中的“$”及其作用 107
    本章小结 108
    习题 108

    第2篇 MVC Web动态网站开发技术基础

    第4章 Web开发技术概述 110
    4.1 MVC模型简介 110
    4.2 ASP.NET Core MVC概述 110
    4.2.1 .NET Core架构体系 110
    4.2.2 .NET Core安装与使用概述 111
    4.3 ASP.NET MVC的开发理念 115
    4.3.1 关注点分离 115
    4.3.2 以习惯替换配置 115
    4.4 版本控制 116
    4.4.1 Git与GitLab服务器 116
    4.4.2 Visual Studio签入签出项目 118
    本章小结 122
    习题 122
    第5章 Model与数据访问 123
    5.1 Model 123
    5.2 数据库开发模式 124
    5.3 创建数据模型 125
    5.4 EF Core框架 126
    5.4.1 模型 126
    5.4.2 使用SQL Server数据库 130
    5.4.3 更改为使用SQLite数据库 134
    本章小结 135
    习题 135
    第6章 View数据呈现 136
    6.1 Views视图概述 136
    6.1.1 视图简介 136
    6.1.2 创建视图 137
    6.2 布局 141
    6.2.1 布局页Layout 141
    6.2.2 指定布局文件 142
    6.2.3 View Import和View Start 142
    6.3 HTML助手 143
    6.3.1 HTML Helper简介 143
    6.3.2 链接 144
    6.3.3 Input控件 144
    6.3.4 列表框 146
    6.3.5 Form表单 147
    6.3.6 使用TagBuilder创建自定义标签 148
    6.3.7 强类型HTML Helper 149
    6.3.8 LabelFor数据标签 150
    6.3.9 DisplayFor和EditorFor 151
    6.4 Tag助手 152
    6.4.1 Form Tag Helper 152
    6.4.2 Input Tag Helper 153
    6.4.3 Textarea Tag Helper 157
    6.4.4 Label Tag Helper 158
    6.4.5 验证Tag Helper 159
    6.4.6 Select Tag Helper 160
    6.5 分部视图 168
    6.5.1 分部视图概述 168
    6.5.2 分部视图示例 168
    6.6 视图组件 171
    6.6.1 视图组件概述 171
    6.6.2 视图组件示例 172
    本章小结 173
    习题 173
    第7章 Razor和Blazor 174
    7.1 Razor 174
    7.1.1 Razor语法 174
    7.1.2 Razor表达式 174
    7.1.3 Razor代码块 176
    7.1.4 控制结构 177
    7.1.5 指令 180
    7.1.6 模板化Razor委托 185
    7.1.7 Razor的其他内容 187
    7.2 Blazor 188
    7.2.1 WebAssembly 188
    7.2.2 Blazor 191
    本章小结 192
    习题 192
    第8章 路由与控制器 193
    8.1 控制器、操作和操作结果 193
    8.1.1 控制器 193
    8.1.2 操作 195
    8.1.3 操作结果 200
    8.2 路由 205
    8.2.1 路由中间件 205
    8.2.2 属性路由 206
    8.2.3 URL生成 209
    8.2.4 实现IActionConstraint的路由
    约束 212
    8.3 过滤器 213
    8.3.1 过滤器的工作过程 213
    8.3.2 配置过滤器 217
    8.3.3 .NET Core MVC中的常用
    过滤器 220
    8.3.4 过滤器对比中间件 224
    8.4 依赖注入和控制器 225
    8.4.1 依赖注入和构造器注入 225
    8.4.2 Action注入和FromServices 227
    8.4.3 从控制器访问设置 227
    本章小结 228
    习题 229
    第9章 内置对象与状态管理 230
    9.1 HttpContext对象 230
    9.1.1 HttpContext.Request对象 231
    9.1.2 HttpContext.Response对象 234
    9.1.3 HttpContext.Items 235
    9.1.4 HttpContext.Session 235
    9.1.5 HttpContext.User 237
    9.2 页面状态对象 238
    9.2.1 ViewData状态对象 238
    9.2.2 ViewBag状态对象 240
    9.2.3 TempData状态对象 241
    本章小结 242
    习题 242

    第3篇 网站设计开发中的高级论题

    第10章 远程调用 244
    10.1 Web API 244
    10.1.1 Web API概述 244
    10.1.2 使用ASP.NET Core创建
    Web API 245
    10.1.3 Winform调用Web API示例 250
    10.2 WebSocket 250
    10.2.1 WebSocket概述 250
    10.2.2 Web网页聊天示例 251
    10.3 SignalR 251
    10.3.1 SingalR概述 251
    10.3.2 SingalR示例 252
    10.4 gRPC 255
    10.4.1 gRPC概述 255
    10.4.2 gRPC示例 256
    本章小结 259
    习题 259
    第11章 网站项目规划与设计 260
    11.1 公共类库 260
    11.1.1 .NET Standard类库 261
    11.1.2 类库设计与规划 263
    11.2 区域(Areas) 268
    11.2.1 添加区域 268
    11.2.2 区域中的路由 270
    11.3 网站风格 272
    11.3.1 配色方案 272
    11.3.2 UI统筹与皮肤 281
    11.3.3 网站模板 289
    11.4 网站优化 299
    11.4.1 前端页面优化 299
    11.4.2 服务器端优化规则 306
    11.4.3 动静分离 315
    11.4.4 消息队列 317
    本章小结 326
    习题 326
    第12章 网站安全 327
    12.1 认证和授权 327
    12.1.1 基本认证 328
    12.1.2 角色认证 329
    12.1.3 SSO单点登录 330
    12.2 加密 330
    12.2.1 散列技术 330
    12.2.2 对称加密技术 333
    12.2.3 非对称加密技术 334
    本章小结 335
    习题 335
    第13章 网络编程高级技术 336
    13.1 控制反转与依赖注入 336
    13.1.1 控制反转 336
    13.1.2 依赖注入 339
    13.2 中间件 340
    13.2.1 中间件简介 340
    13.2.2 在管道中加入中间件示例 340
    13.3 处理静态文件 342
    13.3.1 静态文件服务 342
    13.3.2 Web root外部文件映射 343
    13.3.3 下载文件类型限定 343
    13.3.4 允许直接浏览目录 344
    本章小结 345
    习题 345
    第14章 网站开发常见技术 346
    14.1 验证码 346
    14.1.1 验证码简介 346
    14.1.2 验证码的实现 347
    14.2 图片水印 347
    14.3 二维码 347
    14.3.1 二维码简介 347
    14.3.2 二维码的实现 348
    14.4 文件上传 349
    本章小结 349
    习题 349
    第15章 Web测试 350
    15.1 单元测试 350
    15.1.1 单元测试概述 350
    15.1.2 .NET Core中的单元测试 350
    15.2 集成测试 354
    15.2.1 集成测试概述 354
    15.2.2 ASP.NET Core中的集成测试 354
    15.3 负载压力测试 366
    15.3.1 负载压力测试介绍 366
    15.3.2 ASP.NET Core 负载压力测试 367
    本章小结 370
    习题 370
    第16章 网站部署 371
    16.1 Kestrel部署 371
    16.1.1 默认配置 371
    16.1.2 发布文件 372
    16.2 IIS部署 376
    16.3 Docker部署 379
    16.3.1 上传网站到服务器 379
    16.3.2 开始Docker的安装 381
    16.3.3 下载.NET Core镜像 381
    16.3.4 创建容器并运行网站 381
    16.4 部署Nginx负载均衡 383
    本章小结 385
    习题 385
    参考文献 386





最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册