编辑推荐
囊括前后端多项技术,全栈学习一站直达:
Node.js
MongoDB
Backbone.js
Parse.com
Heroku
WindowsAzure
多版本Chat应用,贯通多组合实现:
jQuery+Parse.comJSRESTAPI
Backbone.js+Parse.comJSSDK
Backbone.js+Node.js
Backbone.js+Node.js+MongoDB
内容简介
《JavaScript快速全栈开发》涵盖JavaScript快速开发的多项前沿技术,是极其少见的前后端技术集大成之作。本书所涉技术包括Node.js、MongoDB、Twitter Bootstrap、LESS、jQuery、Parse.com、Heroku等,分三部分介绍如何用这些技术快速构建软件原型。第一部分是基础知识,让大家真正认识前后端及敏捷开发,并学会搭建本地及云环境。第二部分与第三部分分别介绍如何构建前端原型和后端原型。作者以前端组件开篇,通过为一个示例聊天应用Chat打造多个版本(Web/移动),将前端和后端结合在一起并给出应用部署方式。
作者简介
Azat Mardanov,资深软件工程师,带领团队重构了具有5000万用户的DocuSign;社交媒体新闻聚合网Storify.com工程师,为包括BBC、NBC、CNN、白宫等客户提供服务;原Gizmo首席技术官和联合创始人,期间参与著名的500 Startups商业加速器项目;科技聚会和编程马拉松活动的常客,曾和FashionMetric.com团队一起在AngelHack活动上12次入围决赛;General Assembly、Hack Reactor、pariSOMA和Marakana等机构的讲师,其技术课程获得一致好评;技术作者,其个人博客webAppLog.com一度成为谷歌搜索“express.js tutorial”结果中排名第一的教程站点;他还曾为美国各大政府机构开发关键任务应用。另外,他还著有Express.js Guide、Practical Node.js等书,而且开发了很多Node.js开源项目(如ExpressWorks、mongoui以及HackHall等)。
内页插图
目录
第一部分快速入门
第1章基础知识
1.1定义前端
1.1.1综述
1.1.2HTML
1.1.3CSS
1.1.4JavaScript
1.2敏捷开发概述
1.2.1Scrum
1.2.2测试驱动开发
1.2.3持续部署和集成
1.2.4结对编程
1.3后端定义
1.3.1Node.js
1.3.2NoSQL和MongoDB
1.3.3云计算
1.3.4HTTP请求和响应
1.3.5REST式API
第2章设置
2.1本地环境搭建
2.1.1开发目录
2.1.2浏览器
2.1.3IDE和文本编辑器
2.1.4版本控制系统
2.1.5本地HTTP服务器
2.1.6数据库:MongoDB
2.1.7其他组件
2.2云端环境搭建
2.2.1SSH密钥
2.2.2GitHub
2.2.3WindowsAzure
2.2.4Heroku
2.2.5Cloud
第二部分前端原型构建
第3章jQuery和Parse.com
3.1定义
3.1.1JSON
3.1.2AJAX
3.1.3跨域调用
3.2jQuery
3.3TwitterBootstrap
3.4LESS
3.4.1变量
3.4.2混入类(mixin)
3.4.3操作符
3.5使用第三方API(Twitter)和jQuery的例子
3.6Parse.com
3.7使用Parse.com的Chat概述
3.8使用Parse.com的Chat:RESTAPI和jQuery版本
3.9推送到GitHub
3.10部署到WindowsAzure
3.11部署到Heroku
3.12更新和删除消息
第4章Backbone.js
4.1从头开始构建Backbone.js应用
4.2使用集合
4.3事件绑定
4.4使用Underscore.js视图和子视图
4.5重构
4.6开发时的AMD和Require.js
4.7生产环境里的Require.js
4.8简单好用的Backbone脚手架工具
第5章Backbone.js和Parse.com
5.1使用Parse.com的Chat:JavaScriptSDK和Backbone.js版本
5.2部署Chat到PaaS
5.3增强Chat应用
第三部分后端原型构建
第6章Node.js和MongoDB
6.1Node.js
6.1.1创建Node.js的HelloWorld程序
6.1.2Node.js核心模块
6.1.3NPM
6.1.4部署HelloWorld到PaaS
6.1.5部署到WindowsAzure
6.1.6部署到Heroku
6.2Chat:运行时内存版本
6.3Chat的测试用例.
6.4MongoDB
6.4.1MongoDBShell
6.4.2MongoDB原生驱动
6.4.3MongoDBonHeroku:MongoHQ
6.4.4BSON
6.5Chat:MongoDB版本
第7章整合前后端
7.1不同域部署
7.2修改入口
7.3Chat应用
7.4部署
7.5同域部署
第8章福利:Webapplog上的文章
8.1Node里的异步
8.1.1非阻塞I/O
8.1.2异步编码方式
8.2使用Monk迁移MongoDB
8.3在Node.js里使用Mocha实践TDD
8.3.1谁需要使用测试驱动的开发
8.3.2快速开始指南
8.4Wintersmith:静态网站生成器
8.4.1开始使用Wintersmith
8.4.2其他静态网站生成器
8.5Express.js教程:使用Monk和MongoDB的简单RESTAPI应用
8.6Express.js教程:参数、错误处理及其他中间件
8.6.1请求处理函数
8.6.2参数处理中间件
8.6.3错误处理
8.6.4其他中间件
8.6.5抽象
8.7使用Node.js和MongoDB通过Mongoskin和Express.js构建JSONRESTAPI服务器
8.7.1测试覆盖率
8.7.2依赖
8.7.3实现
8.7.4总结
8.8Node.jsMVC:Express.js+DerbyHelloWorld教程
8.8.1NodeMVC框架
8.8.2Derby安装
8.8.3文件结构
8.8.4依赖
8.8.5视图
8.8.6主服务器
8.8.7Derby应用
8.8.8运行HelloWorld应用
8.8.9递值给后端
总结与推荐阅读
前言/序言
为什么要撰写本书
其实本书是由失望激发的产物。作为一名具有多年工作经验的软件工程师,当我开始学习Node.js和Backbone.js时,发现从它们的官方文档入手相当困难,而且网上严重缺少快速入门指南和相应的示例。并且,你基本上不可能在同一个地方找到JS相关的高级技术的所有教程。
最好的学习方式就是实践,没错吧?因此我通过简单的小例子来实践,即快速入门指南,用来快速学习一些新技术。在完成一些基本的程序后,我需要一些参考文档和回顾。一开始我写这个指南只是自用,以加深对这些概念的理解,并且供以后参考。在StartupMonthly我教了几次为期两天的集中课程,也是使用同样的理念,帮助有经验的开发者使用JavaScript进行敏捷开发。我们使用的手册得到了很多反馈,然后我们进行了大量更新。最终的成果就是你面前这本书了。
本书内容
正常情况下,读者一定会期待这里有一些快速入门指南、教程和建议(比如,Git工作流)。我们主要介绍如何编码,而非阐述理论知识,因此其中的理论会直接和实践部分相关,对于更好地理解相应技术(比如JSONP和跨域请求)以及用到的具体方法来说必不可少。
除了代码示例,本书几乎介绍了所有安装和部署步骤。
你将从前端组件开始,学习一个聊天(Web/移动)应用程序的例子。这个程序会有多个版本,而最终我们会把前端和后端结合到一起,然后将该程序发布到生产环境。这个聊天程序包含典型Web应用所有必要的组件,会帮你建立自己开发应用、应聘好工作或晋升,甚至是创业的信心。
目标读者
本书面向进阶的初学者和中级Web及移动开发者,即熟悉RubyonRails、PHP、Perl、Python或者Java等其他语言的专家。这类开发人员希望学习更多的JavaScript及Node.js相关技术来快速构建Web和移动程序原型,但可能没有时间去翻阅(大量或者哪怕些许)官方文章。我们并非想通过本书将读者成就为专家,而是希望帮助他们尽可能快地构建程序。
本书英文书名RapidPrototypingwithJS:AgileJavaScriptDevelopment直译为“用JS快速构建原型:JavaScript敏捷开发”,顾名思义,它就是要介绍如何用最快的速度以Web或者移动应用的形式构建出原型。这正是LeanStartup里的思想,所以相对来说本书对于创业公司的创始人会更有意义,但大公司的员工同样会发现它的有用之处,特别是当他们想要掌握新技能,想要晋升或谋求更好的工作时。
这本书不是什么
这既不是一本全面介绍相关框架、库或者技术(或者某一特定技术)的书,也不是所有Web开发技术与技巧的参考书。本书中的例子很可能在网上有公开可用的类似源代码。
如果你不了解循环、条件判断语句、数组、散列、对象和函数等编程基础概念,请不要奢望在本书中了解它们。此外,理解书中的例子也将非常具有挑战性。
市面上已经有许多特别棒的书介绍了基本编程方法,本书最后就给出了一个此类书的列表,以方便大家查阅。再次提醒大家注意,本书的目的是讲述敏捷开发,而非重述编程理论和计算机科学知识。
JavaScript快速全栈开发 电子书 下载 mobi epub pdf txt