Node.js+MongoDB+AngularJS Web开发

这篇是计算机类的优质预售推荐>>>>《Node.js+MongoDB+AngularJS
Web开发》

MEAN全栈工程师首部实战书 从服务器到浏览器基于JavaScript的Web应用程序权威指南 内容完整细致可直接用来入门任一技术

编辑推荐

Node.js是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得Web程序员能够完全用JavaScript创建从服务器到客户端的高性能站点和应用程序。

本书为想要将这3种技术整合到完整的有效解决方案的Web程序员提供了完整指南。它以这3种技术的简洁而清晰的教程开始,然后迅速转到构建几种常见的Web应用程序上面。

读者将学会如何使用Node.js和MongoDB来建立更具可扩展性的高性能网站,如何利用AngularJS的创新MVC方法构建更有效的网页和应用程序,以及如何把这3个结合在一起使用,从而提供卓越的下一代Web解决方案。

■ 使用Node.js和Express实现高度可扩展的动态Web服务器

■ 为你的Web应用程序实现一个MongoDB的数据存储

■ 从Node.js JavaScript代码访问MongoDB并与之互动

■ 定义扩展了HTML语言的自定义AngularJS指令

■ 用JavaScript构建服务器端Web服务

■ 实现可以与Node.js Web服务器交互的客户端服务

■ 构建提供丰富的用户交互的动态浏览器视图

■ 为Web应用程序和网页添加对用户账户的身份验证和嵌套评论的组件

内容简介

Node.js 是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS
正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得能够完全用JavaScript 创建从服务器到客户端浏览器的高性能站点和应用程序。

《Node.js+MongoDB+AngularJS Web开发》为想要将这3 种技术整合到全面的有效解决方案的Web 程序员提供了完整指南。它简洁而清晰地介绍了这3 种技术,然后迅速转到构建几种常见的Web 应用程序上面。

读者将学会使用Node.js 和MongoDB来建立更具可扩展性的高性能网站,并利用AngularJS 创新的MVC 方法构建更有效的网页和应用程序,以及把这三者结合在一起使用,从而提供卓越的下一代Web解决方案。

《Node.js+MongoDB+AngularJS Web开发》适合对HTML 的基础知识已经有所了解,并可以用现代编程语言完成一些编程的读者。读者如果对JavaScript 有一定了解,则将更易于理解本书的内容。

作译者

Brad
Dayley是一名高级软件工程师,在开发企业应用程序及Web界面方面,他拥有超过20年的工作经验。他曾设计并实现了一大批网站,其范围涵盖从企业应用服务器到富互联网应用程序,以及用于移动Web服务的智能界面。他的著作包括jQuery and JavaScript Phrasebook、Sams Teach Yourself NoSQL with MongoDB in 24 Hours和 Sams Teach Yourself jQuery and JavaScript in 24 Hours。

前言

欢迎阅读本书。本书将引领你进入使用JavaScript的世界--在你的Web开发项目中,从服务器和服务到浏览器客户端。本书涵盖Node.js、MongoDB和AngularJS的实现和集成,而它们是Web开发世界中新兴的一些最令人兴奋和创新的技术。

  本篇前言包括:

  本书受众;

  为什么要阅读本书;

  从本书你将了解到的知识;

  Node.js、MongoDB和AngularJS分别是什么,以及为什么它们都是出色的技术;

  本书的组织结构;

  在哪里可以找到代码示例。

  让我们开始吧。

  本书受众

  这本书假定读者已经对HTML的基础知识有所了解,并可以用现代编程语言完成一些编程。读者如果对JavaScript有一定了解,将更容易理解本书的内容;但这不是必需的,因为本书确实也涵盖了JavaScript的基础知识。

  为什么要阅读本书

  这本书将教你如何创建功能强大的互动网站和Web应用程序--从Web服务器和服务器上的服务到基于浏览器的交互式Web应用程序。这里所涉及的技术都是开源的,在服务器端组件和浏览器端的组件上你都可以使用JavaScript。

  这本书的大多数读者想要掌握Node.js和MongoDB,以便可以达到构建高度可扩展和高性能网站的目的。大多数读者也想利用AngularJS创新的MVC方法来实现精心设计和结构化的网页和Web应用程序。总之,Node.js、MongoDB和AngularJS提供了一个易于实现并完全集成的Web开发套件,它可以让你实现神奇的Web 2.0应用程序。

  从本书你将了解到的知识

  阅读本书将帮助你构建现实中的动态网站和Web应用程序。网站不再由HTML页面和集成的图像及格式化的文本等简单的静态内容构成。相反,网站变得更加动态,单个网页往往充当一个完整的网站或应用程序。

  使用AngularJS技术,可让你在网页中构建逻辑,这可以与Node.js服务器相互通信并从MongoDB数据库获取必要的数据。Node.js、MongoDB和AngularJS 的组合可以让你实现交互式动态网页。通过阅读本书,你将学会如下的事情:

  如何使用Node.js和Express来实现一个高度可扩展的动态Web服务器;

  如何在JavaScript中创建服务器端的Web服务;

  如何在Web应用程序中实现MongoDB的数据存储;

.  如何用Node.js JavaScript代码实现对MongoDB的访问和交互;

  如何定义静态和动态Web路由并实现服务器端脚本来支持它们;

  如何定义扩展HTML语言的你自己自定义的AngularJS指令;

  如何实现可以与Node.js Web服务器交互的客户端服务;

  如何建立提供丰富的用户交互的动态浏览器视图;

  如何将用户账户的身份验证添加到网站/Web应用程序;

  如何将嵌套的评论组件添加到网页;

  如何建立一个端到端的购物车。

  何为Node.js

  Node.js是基于谷歌的V8 JavaScript引擎的开发框架。你可以用JavaScript编写Node.js代码,然后V8将它编译为要执行的机器代码。你可以用Node.js编写出大部分,或者甚至全部的服务器端代码,包括Web服务器、服务器端的脚本和任何支持Web应用程序的功能。Web服务器和支持Web应用程序的脚本在同一个服务器端应用程序中运行这一事实,允许在Web服务器和脚本之间有更紧密的集成。

  Node.js之所以是一个出色的框架,基于下面几个原因。

  JavaScript端到端:Node.js最大的一个优点是,它可以让你用JavaScript同时编写服务器端和客户端脚本。在决定是把逻辑放入客户端脚本还是服务器端脚本方面一直有困难。利用Node.js,你可以在客户端上编写JavaScript,并轻松地在服务器上适应它,反之亦然。另外一个好处是,客户端的开发者和服务器的开发者使用同一种语言。

  事件驱动的可扩展性:Node.js应用独特的逻辑来处理Web请求。使用Node.js,不是让多个线程等待处理Web请求,而是采用一种基本的事件模型在同一个线程上处理它们。这使得Node.js Web服务器可以用传统的Web服务器不能做到的方式进行扩展。

  可扩展性:Node.js有很多的追随者和非常活跃的开发社区。人们正在不断提供新的模块来扩展Node.js的功能。此外,在Node.js中安装和包含新的模块是非常简单的,你可以在几分钟内扩展Node.js的项目来包含新的功能。

  快速执行:建立Node.js,并在其中开发是超级容易的。在短短几分钟内就可以安装Node.js,并拥有一个能工作的Web服务器。

  何为MongoDB

  MongoDB是一个灵活的和可扩展性非常好的NoSQL数据库。Mongo这个名字来自单词"堆积如山"(humongous),用来强调MongoDB提供的可扩展性和性能。MongoDB为需要存储诸如用户评论、博客或其他条目数据的高流量的网站提供了出色的网站后端存储,因为它可快速扩展并易于实现。

  下面是MongoDB真正适合于Node.js套件的一些原因。

  针对文档:因为MongoDB是针对文档的,所以数据在数据库中存储的格式,非常接近你在服务器端和客户端脚本中处理它们的格式。这消除了把数据从行转换为对象和转换回来的需要。

  高性能:MongoDB是目前性能最高的数据库之一。尤其是在现在,有越来越多的人与网站进行交互,具有能够支持大流量的后端是很重要的。

  高可用性:MongoDB的复制模型使得它很容易维护可扩展性,同时保持高性能。

  高可扩展性:MongoDB的结构使得它可以很容易地通过在多个服务器上对数据分片实现横向扩展。

  无SQL注入:MongoDB是不容易受到SQL注入攻击的(也就是向Web表单或从浏览器的其他输入中输入SQL语句,从而危及数据库的安全性)。这是因为对象被存储为对象,不使用SQL字符串。

  何为AngularJS

  AngularJS是由谷歌开发的客户端框架。它是用JavaScript编写的,带有一个精简过的jQuery库。AngularJS背后的理论是提供一个框架,使得可以很容易地使用MVC框架实现设计良好的结构化网页和应用程序。

  AngularJS提供了在浏览器中处理用户输入、操纵客户端上的数据及控制元素如何在浏览器界面上显示的功能。下面是AngularJS具有的一些优势。

  数据绑定:AngularJS利用其强大的范围机制,有一个将数据绑定到HTML元素的非常干净的方法。

  可扩展性:AngularJS架构允许你轻松地扩展语言的各个方面,以提供你自己的自定义实现。

  整洁:AngularJS迫使你编写整洁的、合乎逻辑的代码。

  可重用代码:可扩展性和简洁代码的结合,使得很容易用AngularJS编写可重用的代码。事实上,在创建自定义服务的时候,此语言往往迫使你这样做。

  支持:谷歌正把大量资金投入到这个项目,这使得它比那些已失败的类似举措更具优势。

  兼容性:AngularJS基于JavaScript并与jQuery有着密切的联系。这使得更易于开始将AngularJS整合到你的环境和重用在AngularJS框架结构内的现有代码片段。

  本书的组织结构

  这本书分为6个主要部分:

  第1部分"引言",概述了Node.js、MongoDB和AngularJS之间的相互作用,并对这3种产品如何形成一个完整的Web开发套件进行了概述。第2章是JavaScript的初步介绍,它提供了实现Node.js和AngularJS代码时,你需要用到的JavaScript语言的基本知识。

  第2部分"学习Node.js",涵盖了Node.js的语言平台,从安装到实现Node.js模块。这部分向你提供你需要的基本框架,以实现自己的自定义Node.js模块以及Web服务器和服务器端脚本。

  第3部分"学习MongoDB",涵盖了MongoDB数据库,从安装到与Node.js应用程序的集成。本部分将讨论如何规划你的数据模型,以满足你的应用程序需求,以及如何从Node.js应用程序对MongoDB进行访问和交互。

  第4部分"使用Express使生活更轻松",讨论了Node.js的Express模块以及如何利用它作为应用程序的Web服务器。你将学习如何为数据设置动态和静态路由,以及如何实现安全性、缓存和Web服务器的其他基本功能。

  第5部分"学习AngularJS",涵盖了AngularJS框架的架构,以及如何将它集成到Node.js套件。本部分介绍了创建自定义的HTML指令和在浏览器中利用的客户端服务。

  第6部分"建立实用的Web应用程序组件",转换了主题,给出了一些使用Node.js、MongoDB和AngularJS的端到端应用案例;这些案例为Web应用程序提供用户账户的身份验证、评论部分,以及购物车。这部分还介绍了一些在Web应用程序中实现Web 2.0互动的方法。

  获取代码示例

  在本书中你会看到很多以代码清单形式提供的代码示例。每个清单的标题都包括源代码的文件名。要访问示例中使用的源代码文件和图片,请访问如下网址:

  https://github.com/bwdbooks/nodejs-mongodb-angularjs-web-development

  结束语

  我希望你和我一样喜欢学习Node.js、MongoDB和AngularJS。它们都是出色而创新的技术,使用起来真的充满乐趣。很快,你就可以加入这一庞大的Web开发人员之列,和他们一起使用Node.js-to-AngularJS Web套件来建立交互式网站和Web应用程序了。我也希望你喜欢这本书!

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-10 07:52:39

Node.js+MongoDB+AngularJS Web开发的相关文章

《Node.js+MongoDB+AngularJS Web开发》读书笔记及联想

总体介绍 <Node.js+MongoDB+AngularJS Web开发>,于2015年6月出版,是一本翻译过来的书,原书名为<Node.js,MongoDB and AngularJS Web Development>,总的来说是一本讲述如何用Javascript进行B/S架构全栈开发的书. 该书主要讲解4种技术(框架),分为6个部分29个章节.4种技术即Node.js.MongoDB.Express.AngularJS,业内称为MEAN:6个部分我个人理解为: 基础(引言).

使用Backbone.js, ExpressJS, node.js, MongoDB的web应用样板工程

这是web应用的一个完整的样板工程,用到了Backbone.js & Marionette, node.js & ExpressJS,MongoDB & Moogoose, Handlebars, Grunt.js, Bower和Browserify! 我建立了一个超级基础的单页面应用程序(SPA),就是一个简单的通讯录管理器, 但麻雀虽小,五脏俱全.我写这篇文章的目的是介绍一下这个应用所用到的整个技术栈:后端,数据,前端,工具和测试.主要包括下面这些技术: 后端: node.js

AngularJS + Node.js + MongoDB开发的基于位置的通讯录(by vczero)

一.闲扯 有一天班长说了,同学们希望我开发一个可以共享位置的通讯录,于是自己简单设计了下功能.包括用户角色.发表微博.共享位置等等.这次也是有点私心的,为了锻炼最近看的angularjs,于是果断选择Node.js + MongoDB + angular.js的方案.当然,开发Node.js的体会越来越深刻.记得,去年leader告诉我说尽量让node的每一个服务只支撑一个业务功能,这样才能更方便的维护.当时特别想把一个Node服务做的特别强大.现在看来leader的做法是对的,我更加倾向于把n

Node.JS + MongoDB技术浅谈

看到一个Node.JS + MongoDB的小样例,分享给大家.魔乐科技软件学院(www.mldnjava.cn)的讲座 Node.JS + MongoDB技术讲座          云计算 +大数据 = 未来. 在中国的云计算上基本上是一个概念,个人感觉与当初的SOA没有太大的差别,空泛的理论. 中小型开发的未来 = Node.JS + MongoDB解决,并非说Java就没用了. 1.在前面的话 Java技术始终作为高端软件用户的首选,仅仅要从事大型的软件开发,那么Java都是必需要使用的技

基于Node和MongoDB的Web微博系统

基于Node和MongoDB的Web微博系统 概述 项目是受到<Node.js开发指南>一书启发,作者BYVoid大佬是当时第一批Node开发者,当时学习者迫切需要一个这么DEMO.当然现在已经过去很多年了,Node早就更新无数次了,12年的这本书也就过时,许多代码都根本跑不通了,最后还是要以官网API为准. 项目的后台用的express. 数据库部分自己写的原生MongoDB,没有去用控制力更强大的mongoose框架,多写原生东西对自己有好处. 前端用的是jQuery,underscore

Vue.js实践:一个Node.js+mongoDB+Vue.js的博客内容管理系统

项目来源 以前曾用过WordPress搭建自己的博客网站,但感觉WordPress很是臃肿.所以一直想自己写一个博客内容管理器. 正好近日看完了Vue各个插件的文档,就用着Vue尝试写了这个简约的博客内容管理器(CMS). 嗯,我想完成的功能: 一个基本的博客内容管理器功能,如后台登陆,发布并管理文章等 支持markdown语法实时编辑 支持代码高亮 管理博客页面的链接 博客页面对移动端适配优化 账户管理(修改密码) Demo 登陆后台按钮在页面最下方"站长登陆",可以以游客身份登入后

用Node.JS+MongoDB搭建个人博客(安装环境)(一)

Node.JS是什么? Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境. Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效. Node.js是由C++开发的,其实是一个JS运行环境,可以让JavaScript运行在服务器上. 安装环境 安装Node.JS和NPM 首先进入NodeJS官网选择自己对应的系统下载最新版,我现在用的是window64位系统,所以选择了window64位版的msi文件.下载完成后安装 安装成功后检查是否

【Node.js】2.开发Node.js选择哪个IDE 开发工具呢

安装完Node.js之后,就要为它选择一个有利的IDE用于开发. 相比较了多个IDE之后,定位在webstrom和sublime上. 有一个简单的比较: webstorm功能很丰富,前端开发工具的集大成者,相比sublime稍重一些 sublime插件也很丰富,界面也比较美观,很轻量,也有简单的project管理功能 这里选择使用sublime作为Node.js的开发工具. 傻瓜式安装,安装完成启动. 关于sublime的使用,有超级多的小技巧. 请在官网查询 其相关文档,后续使用. 然后进入n

Vue2.0+Node.js+MongoDB 全栈打造商城系统

第1章 课程介绍简单回顾前端近几年的框架模式,了解不同时期下的框架特点.其次介绍Vue框架的背景和核心思想,以及同其它MV*框架的对比.1-1 课程-导学1-2 前端框架回顾1-3 vue概况以及核心思想1-4 vue框架优缺点对比 第2章 Vue基础从0到1,如何搭建一个简单的Vue项目:本章节主要讲解Node和Npm环境的搭建,其次介绍vue-cli脚手架的使用,以及通过详细拆解介绍脚手架生成的配置文件信息,最后给大家介绍了Vue涵盖的基础语法.2-1 nodejs和npm的安装和环境搭建2