All about NodeJS
创建并部署高性能的云端 Node.js 应用程序及更多内容!
讲师:Sachin Bhatnagar
安装有道
用不到
您将学到什么
- 使用 Node.js 构建高性能和可扩展的应用程序
- 免费领取我的电子书《ECMAScript 6 快速入门》了解 ES6
- 使用 Node.js 流编写一个 Web 服务器
- 使用 Node 包管理器(NPM)来管理依赖项
- 使用 Express 4 框架构建 Node.js 应用程序
- 使用 EJS 模板语言
- 理解 MongoDB 作为 NoSQL 数据库
- 使用 MongoLab 等服务创建和使用 MongoDB 数据库
- 创建使用 WebSockets 的实时应用
- 使用 NodeJS 上传和调整图片大小
- 使用社交媒体站点如 Facebook 进行身份验证集成
- 将 NodeJS 应用程序划分为模块
- 创建和部署亚马逊网络服务上的 EC2 云服务器实例
- 使用 Node.js 创建和使用亚马逊 S3 存储服务
- 使用亚马逊的 CloudFront 服务
- 使用亚马逊的弹性 IP 地址
- 配置 Amazon EC2 的安全组、端口及转发
- 在 EC2 实例上部署 Node.js 应用程序
- 在 Heroku 上部署一个 Node.js 应用程序
- 在 DigitalOcean 上部署一个 Node.js 应用程序
- 安装和部署 NGINX 作为 NodeJS 应用的反向代理服务器
- 配置 NGINX 作为负载均衡器
- 了解企业集成
- 使用出色的 Hapi 框架创建应用程序
- 了解更多关于使用 Hapi 框架进行日志记录的知识
- 学习使用 ES6 和 Node.js
- 使用 Node.js 和 Python 脚本安装和部署 Apache Apollo 消息队列
课程要求
- 熟练掌握 HTML、CSS 和 JavaScript
- 具备如 Adobe Photoshop 这样的图像编辑应用程序的基本操作知识也会有所帮助,但并非必要。
课程描述
关于这门课程
Node.js 是一个平台,允许开发者使用高性能和网络化的应用程序编写服务器端代码。而且还是用经典的 JavaScript 来实现的。但是等等!JavaScript 不是用来处理网页表单之类的吗?
十年前确实是这样。但如今的世界已经从“您没有正确填写表格!” 的时代发展到了现代 Web 应用程序和社会媒体网站,这些平台高度依赖于 JavaScript。Google Apps、Facebook、Twitter、Google Plus 和 LinkedIn 等就是这种趋势的典型例子。如果没有 JavaScript,这样的飞跃是不可能实现的。今天,当你在 Facebook 上与朋友互动或使用 Gmail 邮箱时,你的浏览器中运行着成千上万行用 JavaScript 编写的代码。
借助 Node.js,你可以将这些知识带回服务器端,在那里通常会看到 PHP、Ruby、ASP.NET 等技术的身影。但这只是 Node.js 很酷的原因之一。能够仅用几行代码编写完整的网络应用程序(例如聊天服务器、协作工具和实时数据可视化应用)就足以让你不仅关注 Node.js,还要深入研究它!
但是我已经懂 PHP 了?为什么我要学习 Node.js 呢?首先,学习新东西永远不会有什么坏处。最重要的是,学习 Node.js 很棒的原因是:
Node.js 允许你编写高度可扩展的网络应用,并部署在云端!
你在使用 Node.js 进行应用程序设计时处于一个不同的层次,这意味着你不是在一个堆栈之上编写应用程序,而是从服务器端开始设计整个堆栈。虽然这听起来可能很吓人,但实际上并不难,你会明白为什么。
你可以在服务器和前端都用同一种语言编写代码!我们都是多语言编程者(在大多数项目中使用多种编程语言和语法),但在后端和前端使用相同的语言不会有什么坏处,并且实际上可以节省大量调试时间。
LinkedIn、Yahoo 和 Microsoft 等公司都在使用 Node.js。它非常新,因此你可以从快速增长的 Node.js 及 JavaScript 开发者社区中受益,这真的很有趣!
如果你一直在编写 JavaScript 代码,你就可以利用现有的知识和技能,将其提升到一个全新的水平!
真正的挑战
所以,Node.js 听起来很有趣,但我在学习 Node.js 的过程中发现的一个事实是:对于任何新的平台、框架或技术,你需要一步一步地从头开始构建实际的应用程序才能真正掌握它。这正是你在这里的原因。
在这门课程中,我们将从零开始,一直做到在云端部署完整的 Node.js 应用!
项目导向的学习
使用 Node.js,我们将构建两个完整的应用程序。我们将从概念创建、UI/UX 设计到编码和部署应用在云端进行全面学习。
A. ChatCAT
– 使用 Node.js 可以做的一件有趣的事情是构建实时应用程序,允许大量并发用户相互交互。这类应用包括聊天服务器、游戏服务器、协作工具等。我们将构建一个多房间的聊天服务器,让用户可以通过 Facebook 登录,并创建他们选择的聊天室进行实时聊天。我们不仅会创建这个应用,还会将其部署在 Heroku 和 Digital Ocean 上!
你将学习使用 WebSockets 的方法、以高效的方式结构化应用程序、设置开发和生产配置、使用 Facebook 进行身份验证、在 Facebook 上设置应用、管理会话、查询并使用托管的 MongoDB 数据库、使用 Heroku 和 Digital Ocean 的云端服务,以及更多内容…
B. PhotoGRID
– 在这门课程中我们将构建的第二个完整应用程序是一个照片画廊应用,它允许用户上传图片到画廊,并对喜欢的照片进行投票。这个 Node.js 应用程序让用户上传文件,然后在服务器上将这些文件缩放为缩略图并存储在 Amazon S3 存储桶中以优化前端界面的交付。整个应用程序运行在一个我们从头开始创建和配置的 Amazon EC2 云服务器上。
你将学习使用 Node.js 和 AJAX 管理文件上传、在服务器端调整图片大小、访问和存储 S3 存储桶中的文件、查询并使用托管的 MongoDB 数据库、使用 Amazon 的弹性 IP 服务及 Cloudfront 分发,确保你的 Node.js 应用即使重启服务器也能自动运行,并且还有更多内容…
在这两个项目中,我们不会遗漏任何执行细节。这是一门完整的动手课程,不仅限于 Node.js,还包括构建和部署 Node.js 应用时需要关注的生态系统。我的目标是手把手带你从编写第一个应用到在云端部署生产级应用。
并且我随时可以亲自帮助你解决遇到的问题。
额外福利
:: 这门课程最好的地方在于,你会看到的教学大纲会让你快速掌握 Node.js 和云部署。然而,你可以使用 Node.js 做的事情还有很多,因此我会不断添加新的讲座和章节来丰富这门课程的内容。有了终身访问权限和所有更新,你将获得更多的内容!
所以,加入我们吧!
本课程适合谁:
- 了解 Node.js 的内部工作机制
- 希望扩展 JavaScript 知识以构建高性能网络应用的网页设计师和前端开发人员。
- 希望构建高性能网络应用的软件开发人员。
- 具备基本 HTML、CSS 和 JavaScript 知识的绝对初学者,希望提升为专业的 Web 开发者并构建 Web 应用程序。
- 任何希望动手学习如何设置 Amazon EC2 实例并使用 CloudFront、Elastic IP 和 S3 等其他服务的人。
- 任何希望亲自实践将 Node.js 应用部署到云端的人士
- 计算机工程学生
- 希望亲自上手进行 Web 编码和应用开发的技术创业者。
- 任何希望始终站在科技前沿的人!
- 希望跳上 Node.js 车辆的 PHP、ASP.NET、Perl、Java 和 Ruby 开发者。












