随笔 - 79, 文章 - 9, 评论 - 4, 阅读 - 22231
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

用Node和Express进行Web开发 前言

Posted on   pencilCool  阅读(52)  评论(0编辑  收藏  举报

翻译自: https://learning.oreilly.com/library/view/web-development-with/9781492053507/
本书是为那些想使用JavaScript、Node和Express创建网络应用(传统网站;使用React、Angular或Vue的单页应用;REST API;或介于两者之间的任何应用)的程序员编写的。Node开发的一个令人兴奋的方面是,它已经吸引了一个全新的程序员受众。JavaScript的可及性和灵活性吸引了来自世界各地的自学成才的程序员。在计算机科学的历史上,没有任何时候编程是如此容易的。用于学习编程(以及在你遇到困难时获得帮助)的在线资源的数量和质量确实令人惊讶和鼓舞。所以对于那些新的(可能是自学的)程序员,我欢迎你们。

当然,还有像我这样的程序员,他们已经有一段时间了。像我那个时代的许多程序员一样,我从汇编和BASIC开始,经历了Pascal、C++、Perl、Java、PHP、Ruby、C、C#和JavaScript。在大学里,我接触了更多的小众语言,如ML、LISP和PROLOG。这些语言中的很多都是我心目中的好语言,但在这些语言中,我都没有看到像JavaScript那样的前景。因此,我也是为像我这样的程序员写这本书的,他们有很多经验,也许对特定技术有更多的哲学观。

不需要有Node的经验,但你应该有一些JavaScript的经验。如果你是编程新手,我推荐Codecademy。如果你是一个中级或有经验的程序员,我推荐我自己的书《学习JavaScript,第三版》(O'Reilly)。本书中的例子可以用于Node工作的任何系统(包括Windows、macOS和Linux等)。这些例子是面向命令行(终端)用户的,所以你应该对系统的终端有一定的熟悉度。

最重要的是,这本书是为那些兴奋的程序员准备的。对互联网的未来感到兴奋,并想成为它的一部分。对学习新事物、新技术和看待网络开发的新方法感到兴奋。如果,亲爱的读者,你还没有兴奋,我希望在你读完本书时,你会兴奋起来....。

关于第二版的说明
写这本书的第一版是一件很高兴的事,我至今对我能在书中提出的实用建议和读者的热烈反应感到高兴。第一版出版时,Express 4.0刚刚从测试版发布,虽然Express仍然是4.x版本,但与Express配套的中间件和工具已经发生了巨大变化。此外,JavaScript本身也发生了变化,甚至Web应用程序的设计方式也发生了结构性变化(从纯粹的服务器端渲染转向单页应用程序[SPA])。虽然第一版中的许多原则仍然有用和有效,但具体的技术和工具却几乎完全不同。新的版本早该问世了。由于SPA的兴起,第二版的重点也发生了变化,更加强调Express作为API和静态资产的服务器,并包括一个SPA的例子。

本书是如何组织的
第1章和第2章将向你介绍Node和Express以及一些你将在本书中使用的工具。在第3章和第4章中,你将开始使用Express,并建立一个样本网站的骨架,该网站将在本书的其余部分作为一个运行实例。

第5章讨论了测试和QA,第6章介绍了一些Node的重要结构,以及它们如何被Express扩展和使用。第7章介绍了模板化(使用Handlebars),这为用Express建立有用的网站奠定了基础。第8章和第9章介绍了cookie、会话和表单处理程序,完善了用Express建立基本功能网站所需的知识。

第10章深入研究了中间件,这是Express的一个核心概念。第11章解释了如何使用中间件从服务器上发送电子邮件,并讨论了电子邮件固有的安全和布局问题。

第12章提供了对生产问题的预览。尽管在本书的这个阶段,你还没有掌握建立一个可用于生产的网站所需的所有信息,但现在考虑生产问题可以使你在将来免于重大的头痛。

第13章是关于持久性,重点是MongoDB(领先的文档数据库之一)和PostgreSQL(流行的开源关系型数据库管理系统)。

第14章介绍了用Express进行路由的细节(URL如何映射到内容),第15章转而介绍了用Express编写API。第17章涵盖了服务静态内容的细节,重点是最大限度地提高性能。

第18章讨论了安全问题:如何在你的应用程序中建立认证和授权(重点是使用第三方认证供应商),以及如何通过HTTPS运行你的网站。

第19章解释了如何与第三方服务集成。使用的例子有Twitter、谷歌地图和美国国家气象局。

第16章利用我们所学到的关于Express的知识,将运行中的例子重构为一个SPA,由Express作为后台服务器提供我们在第15章中创建的API。

第20章和第21章让你准备好迎接大日子:你的网站发布。它们涵盖了调试,这样你就可以在发布前根除任何缺陷,以及上线的过程。第22章讨论了下一个重要的(也是经常被忽视的)阶段:维护。

本书的最后一章是第23章,它指出了额外的资源,如果你想进一步了解Node和Express,以及你可以去哪里获得帮助。

网站实例
从第三章开始,本书将使用一个贯穿始终的例子:Meadowlark旅游网站。我是在刚从里斯本旅行回来后写的第一版,我心里一直想着旅行,所以我选择的例子网站是为我家乡俄勒冈州的一家虚构的旅游公司(西草雀是俄勒冈州的州歌)。Meadowlark Travel允许旅行者与当地的 "业余导游 "联系,它与提供自行车和滑板车租赁以及当地旅游的公司合作,重点是生态旅游。

像任何教学实例一样,Meadowlark旅游网站是被设计出来的,但它是一个涵盖了现实世界网站所面临的许多挑战的例子:第三方组件集成、地理定位、电子商务、性能和安全。

由于本书的重点是后端基础设施,这个例子网站不会是完整的;它只是作为真实世界网站的一个虚构的例子,为例子提供深度和背景。据推测,你正在做你自己的网站,你可以把Meadowlark旅游的例子作为它的模板。

相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示