Skip to content

Latest commit

 

History

History
98 lines (53 loc) · 7.27 KB

File metadata and controls

98 lines (53 loc) · 7.27 KB

零、前言

Node.js 是当今最流行的技术之一。 它不断增长的社区每天都会产生大量的模块。 这些模块可以用作服务器端应用程序的构建块。 我们在服务器端和客户端使用相同的语言(JavaScript),这使得开发更加流畅。

这本书包含 11 章,包含了建立一个社会网络的一步一步的指导。 像 Facebook 和 Twitter 这样的系统很复杂,开发起来很有挑战性。 很高兴我们将学习 Node.js 的能力,但如果我们在一个具体的上下文中做,它将更有趣。 这本书涵盖了基本的阶段,如架构和素材管道的管理,并讨论了功能,如用户的好友和实时通信。

这本书的内容

第一章,Node.js 基础知识将教授 Node.js 的基础知识,该技术背后的支撑,以及它的模块管理系统和包管理器。

第二章,构建项目揭示了构建系统的强大功能,比如 Gulp。 在开始我们的社交网络之前,我们将计划这个项目。 我们将讨论测试驱动开发和模型-视图-控制器模式。 本章将涵盖引导项目所需的 Node.js 模块。

第三章,素材管理,介绍了 web 应用程序的构建。 因此,我们必须处理 HTML、CSS、JavaScript 和图像。 在本章中,我们将讨论素材服务背后的过程。

第四章、模型-视图-控制器层的开发介绍了应用程序的基本结构。 我们将为视图、模型和控制器创建类。 在接下来的几章中,我们将使用这些类作为基类。

第五章,用户管理,实现了用户注册、授权和配置文件管理。

第六章,添加好友能力,解释了现代社交网络背后的一个主要概念——好友。 找到朋友和跟随他们的墙的能力是一个重要的部分。 本章致力于发展用户之间的这种关系。

第 7 章发布内容指出,每个社交网络的主干是用户添加到系统中的内容。 在本章中,我们将实现后期制作的过程。

第 8 章创建页面和事件指出,为用户提供创建页面和事件的能力将使我们的社交网络更有趣。 用户可以添加任意多的页面。 其他用户将能够加入我们网络中新创建的位置。 我们还将添加代码来收集统计信息。

第 9 章Tagging, Sharing and like解释了除了发布和评论内容外,社交网络的用户应该能够对帖子进行标签、分享和点赞。 本章致力于这些功能的开发。

第 10 章增加了实时聊天,讲述了用户的期望,在当今世界,看到正在发生的一切。 他们想要更快地相互交流。 在本章中,我们将开发一个实时聊天,以便用户可以即时发送消息。

第 11 章测试用户界面,解释了完成工作很重要,但是用测试覆盖工作功能也很重要。 在本章中,我们将看到如何测试用户界面。

你需要什么来写这本书

该书基于 Node.js 版本 0.10.36。 我们还将使用 MongoDB(http://www.mongodb.org/)作为数据库,使用 active.js(http://www.ractivejs.org/)作为客户端框架。

这本书是写给谁的

如果你有 JavaScript 的知识,并想知道如何在后端使用它,这本书是为你。 它将引导你创建一个相当复杂的社交网络。 您将学习如何使用数据库并创建实时通信通道。

会议

在这本书中,你会发现许多不同风格的文本,区分不同种类的信息。 下面是这些风格的一些例子,以及对它们含义的解释。

文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄如下所示:“如果 Ractive 组件有friends属性,那么我们将呈现一个用户列表。”

代码块的设置如下:

<li class="right"><a on-click="goto:logout">Logout</a></li>
<li class="right"><a on-click="goto:profile">Profile</a></li>
<li class="right"><a on-click="goto:find-friends">Find  friends</a></li>

任何命令行输入或输出都写如下:

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm

新词语、重要词语以粗体显示。 你在屏幕上看到的单词,例如在菜单或对话框中,会出现这样的文本:“它显示它们的名字和一个添加为好友按钮。”

提示

提示和技巧是这样的。

读者反馈

我们欢迎读者的反馈。 让我们知道你对这本书的看法——你喜欢或不喜欢这本书。 读者反馈对于我们开发游戏非常重要,你可以从中获得最大收益。

要向我们发送一般性的反馈,只需发送一封电子邮件到<[feedback@packtpub.com](mailto:feedback@packtpub.com)>,并通过邮件的主题提到书名。

如果有一个主题,你有专业知识,你有兴趣写或贡献一本书,请参阅我们的作者指南www.packtpub.com/authors

客户支持

现在,你已经自豪地拥有了一本书,我们有一些东西可以帮助你从购买中获得最大的好处。

示例代码下载

您可以从您的帐户http://www.packtpub.com下载已购买的所有 Packt 图书的示例代码文件。 如果您在其他地方购买这本书,您可以访问http://www.packtpub.com/support并注册,将文件直接通过电子邮件发送给您。

勘误表

尽管我们已经竭尽全力确保内容的准确性,但错误还是会发生。 如果你在我们的书中发现错误,也许是文本或代码上的错误,如果你能向我们报告,我们将不胜感激。 通过这样做,您可以使其他读者免受挫折,并帮助我们改进这本书的后续版本。 如果您发现任何勘误表,请访问http://www.packtpub.com/submit-errata,选择您的图书,点击勘误表提交表格链接,并输入您的勘误表详细信息。 一旦您的勘误表被核实,您的提交将被接受,勘误表将被上载到我们的网站上,或添加到该标题的勘误表部分的任何现有勘误表列表中。 任何现有的勘误表都可以从http://www.packtpub.com/support中选择您的标题来查看。

盗版

在互联网上盗版受版权保护的资料是一个贯穿所有媒体的持续问题。 在 Packt,我们非常重视版权和授权的保护。 如果您在互联网上发现任何形式的我们作品的非法拷贝,请立即提供我们的位置地址或网站名称,以便我们采取补救措施。

请通过<[copyright@packtpub.com](mailto:copyright@packtpub.com)>与我们联系,并提供疑似盗版资料的链接。

我们感谢您保护我们的作者的帮助,以及我们为您带来有价值内容的能力。

问题

如果您对这本书的任何方面有任何问题,可以通过<[questions@packtpub.com](mailto:questions@packtpub.com)>与我们联系,我们将尽力解决它。