今日好书丨《迈向Angular 2:基于 TypeScript的高性能SPA框架》

《迈向Angular 2:基于 TypeScript的高性能SPA框架》 首著惊见  Angular之父作序力荐 颠覆性升级 TypeScript来袭语 【保加利亚】Minko Gechev著 大漠穷秋,熊三 译 2016年8月出版 小编推荐: AngularJS是一门非常现代的框架,你可以用它来构建高效、健壮的Web应用


《迈向Angular 2》一书是入手Angular 2最快捷的方式,这本书将会帮助你快速转入Angular 2的全新世界

下方评论区留下对此书的想法, 选取一名幸运同学将赠此书,8月12日公布获奖用户

内容提要 本书由Angular之父Miško Hevery作序,作者为Angular开发团队成员之一

基于对Angular 2架构和设计方面的深入理解,《迈向Angular 2:基于TypeScript的高性能SPA框架》选材精准、内容实用

《迈向Angular 2》从一个小例子开始引导读者快速上手,详细介绍Angular 2带来的所有新特性,包括组件、指令、TypeScript、新的路由机制、管道、服务端渲染等

本书读者对象包括Angular 1.x的开发者、想直接从Angular 2开始入手的学习者,以及前端技术架构师等

作译者简介 Minko Gechev 是一名软件工程师,他坚定地信仰开源软件

他开发过许多项目,包括Angular JS 1. x 和 Angular2  style guides 、Angular2-seed、Angular2 项目静态代码分析器、aspect.js 、 angular-aop,以及很多其它项目

他开办了 JavaScript、Angular 等 web 技术 培训课程

Minko热衷于进行各种计算机科学概念实验并把它们投入到实战中去

他在ng-vegas、AngularConnect、ITWeekend Kiev、Angular JS-SF,以及 Angular Berlin 等全球论坛上进行过关于 Angular 与软件开发相关话题的演讲

译者 章小飞 ,笔名大漠穷秋,从业 9 年有余

历任南京华瑞杰自动化系统部开发工程师、运维工程师;亚信联创南研设计部高级软件开发工程师;目前就职于 ZTEsoft 中兴软创,任前端技术架构师、中兴软创产品技术战略规划委员会常任委员

个人技术全面,熟悉 Java 相关的开发框架,如 SSH、MyBatis、Ehcache 等

在前端技术方面尤其有深入的研究,先后使用并研究过 Flex、jQuery、Extjs、Backbone、AngularJS等常见的前端开发框架

先后著、译有《Ext 江湖》《ActionScript3.0 游戏设计基础》《用 AngularJS 开发下一代 Web 应用》( 2013 年最佳引进技术图书》

曾在 W3CTech、海尔电商、Google GDG、开源中国等组织演讲;发布 “AngularJS 实 战 ”等广受欢迎的Mooc 视频教程

序   言 AngularJS是一个JavaScript开发框架,致力于让web应用开发变得更加简单

目前,它已经被应用在大规模、大流量的网站中,这些网站饱受性能低下、移植性差的困扰,同时还面临SEO不友好、复杂度大的问题

Angular 2改变了这一切

它是一款非常现代的框架,可以利用它构建性能更高、健壮性更强的web应用

《迈向Angular 2:基于TypeScript的高性能SPA框架》是掌握Angular 2最快捷的方式,它将引领你进入Angular 2的全新世界

读完本书,你将会具备利用Angular 2所提供的一系列新特性来快速有效地构建应用的能力

本书内容 第1章 Angular 2快速上手:开启Angular 2新世界的旅程

这一章描述了框架设计决策背后的一些主要因素

我们将会看到形成这门框架的两种主要驱动力—web的当前状态以及前端框架的进化

第2章 Augular 2应用的基础构件:简要介绍Angular 2引入的一些核心概念

我们将会探讨AngularJS 1.x所提供的基础构件与最近一个主版本之间的差异

第3章 TypeScript速成:Angular 2是语言无关的,但是Google推荐大家利用TypeScript所带来的静态类型特性

在这一章中,你将会学习利用TypeScript开发Angular 2应用的所有必要语法! 第4章 Angular 2组件和指令入门:解释开发用户界面所需要的核心构件—Directive以及Component

我们将会深度解析视图封装、内容投影、输入输出、脏值检测等概念

同时还会讨论一些高级主题,例如:模板引用,以及使用不可变数据类型加快应用的运行速度

第5章 Angular 2中的依赖注入:这一章将会全面解析这门框架中最强大的特性之一:依赖注入机制

它最初是由AngularJS 1.x引入的

我们可以利用这一特性来编写更加便于维护、测试,并且更易于理解的代码

在这一章结束的时候,我们将会理解如何在Service中定义业务逻辑,然后利用DI(依赖注入)机制把它和UI黏合到一起

我们还会解析一些更加高级的主题,例如:注射器的层级结构、配置provider等

第6章 Angular 2中的路由和表单:这一章将会探索在开发实际应用的过程中如何使用用来维护form的新模块

我们将会实现一个页面,可以显示form中输入的值

最后,我们会利用基于组件的路由把各个单独的页面黏合成一个完整的应用

第7章 详解管道以及与RESTful服务端之间的通信:深度解析路由和表单模块

这一章将会解析如何开发数据模型驱动型表单,以及如何定义参数化路由、子路由

我们还会解释HTTP模块,以及如何开发有状态和无状态管道

第8章 开发体验与服务端渲染:探索开发Angular 2应用中的一些高级主题,例如:在WebWorker中运行应用,以及服务端渲染

在这一章中的第二部分,我们将会学习一些全新的开发工具,从而让日常开发工作更加轻松一些,例如:angular-cli、angular2-seed,以及解释热重载的概念等

阅读准备 对于本书中的绝大多数实例,你需要:一个简单的文本编辑器或者IDE、装好Node.js和TypeScript、能上网,以及一个浏览器

对于每一章所提供的实例代码,对应章节都会解释需要安装的软件

目标读者 你想深入学习Angular 2吗?或许你想先评估一下最新的变更再决定是否跟进?如果是,那么《迈向Angular 2:基于TypeScript的高性能SPA框架》就是为你量身定制的

为了能够充分理解本书内容,需要对AngularJS 1.x有基本的理解,同时需要对JavaScript非常熟悉

阅读本书不需要预先了解 Angular 2所引入的变更

本书目录 序言/XV 第1章 Angular 2快速上手/1 Web的进化——新框架时代/2 ECMAScript的进化/2 Web Component/3 WebWorker/4 从AngularJS 1.x中学到的经验/5 Controller/6 Scope/7 依赖注入/7 服务端渲染/8 大规模应用/9 模板/10 脏值检测/12 本章小结/12 第2章 Augular 2应用的基础构件/14 Angular 2概念性简介/15 脏值检测/17 认识Angular 2中的组件/19 组件实战/20 Angular 2中的组件/22 管道/23 定义管道/24 脏值检测/25 传统的脏值检测/26 AngularJS 1.x中的脏值检测/27 增强AngularJS 1.x的脏值检测/29 理解服务/30 理解新的基于组件的路由机制/33 Angular 2中定义路由的语法/35 本章小结/36 第3章 TypeScript速成/37 TypeScript简介/37 编译时类型检查/38 文本编辑器和IDE的支持更好/38 TypeScript的更多特性/39 TypeScript用法/39 用npm安装TypeScript/40 运行我们的第一个TypeScript程序/40 TypeScript从ES2015和ES2016中引入的语法和特性/41 ES2015中的箭头函数/41 使用ES2015和ES2016中的类/43 定义在块级作用域中可见的变量/45 使用ES2016装饰器进行元编程/46 使用可配置的装饰器/47 使用ES2015编写模块化的代码/48 使用ES2015中的模块语法/49 利用隐式异步行为/50 使用别名/50 导入所有导出的模块/50 默认导出/51 ES2015模块加载器/52 ES2015和ES2016总结/52 发挥静态类型的优势/53 使用显式类型定义/53 理解原生类型/54 理解Object类型/55 定义类/58 使用访问修饰符/59 定义接口/61 使用TypeScript装饰器提升表现力/64 使用类型参数编写泛型代码/64 使用泛型函数/66 多重泛型/66 利用TypeScript的类型推断机制简化代码/67 最常见的类型/67 与上下文有关的类型推断/68 使用外部类型定义/68 使用预定义的外部类型定义/68 自定义外部类型/70 定义ts.d文件/72 本章小结/72 第4章 Angular 2组件和指令入门/74 Angular 2 Hello world!/75 配置开发环境/78 初始化项目仓库/78 Angular 2和TypeScript上手试玩/79 首页代码深度解析/80 Angular 2指令用法/81 ngFor 指令/83 改进了指令语法的语义/83 在模板内部定义变量/85 在模板里面使用语法糖/85 定义Angular 2指令/85 设置指令的输入/87 理解指令的构造函数/87 封装指令的更好方式/88 Angular 2内置指令的用法/89 组件视图封装简介/90 实现组件的控制器/90 处理用户交互/92 指令的输入和输出/93 找到指令的输入和输出/94 定义组件的输入和输出/95 传递输入与使用输出结果/97 事件冒泡/99 重命名指令的输入与输出/100 定义输入输出参数的另一种语法/101 详解Angular 2中的内容投影/102 Angular 2中的内容投影入门/102 投射多块内容/103 组件嵌套/105 ViewChildren和ContentChildren的用法/106 ViewChild与ContentChild/108 挂钩到组件的生命周期上/112 执行的顺序/114 用TemplateRef定义通用视图/115 理解并优化脏值检测机制/118 脏值检测器的执行顺序/118 脏值检测策略/120 利用不可变数据和OnPush策略提升性能/121 在Angular中使用不可变数据结构/122 本章小结/124 第5章 Angular 2中的依赖注入/125 为什么要依赖注入?/125 Angular 2中的依赖注入/126 Angular 2中DI的优点/127 配置注射器/127 使用生成的元数据解析依赖关系/129 初始化注射器/129 前向引用简介/130 配置provider/132 定义实例化服务的工厂/134 子注射器以及可见性/136 构建注射器层级结构/137 配置依赖关系/138 在组件和指令中使用DI/144 元素注射器简介/145 在ES5中使用Angular的DI机制/149 本章小结/152 第6章 Angular 2中的路由和表单/153 开发一个名为“码农仓库”的应用/153 探索Angular 2中的路由/156 定义根组件并启动应用/157 PathLocationStrategy的用法/158 使用@RouteConfig配置路由/158 routerLink 和router-outlet的用法/160 利用AsyncRoute实现懒加载/162 Angular 2中的表单用法/164 开发模板驱动型表单/164 深入理解模板驱动型表单的标签结构/166 使用内置的表单校验器/168 自定义控件的校验器/169 在Angular中使用select输入项/171 NgForm指令的用法/173 Angular 2中的双向数据绑定/176 存储表单数据/178 显示存储的所有开发者列表/180 本章小结/181 第7章 详解管道以及与RESTful服务端之间的通信/183 在Angular 2中开发数据模型驱动型表单/183 使用控件校验器组合/187 探索Angular的HTTP模块/189 使用Angular的HTTP模块/191 定义参数化视图/193 定义嵌套路由/195 使用管道进行数据转换/198 开发无状态管道/199 使用Angular内置的管道/200 开发有状态管道/201 有状态管道的用法/203 Angular中AsyncPipe的用法/204 本章小结/206 第8章 开发体验与服务端渲染/208 在Web Worker中运行应用/208 WebWorker与Angular 2/210 启动基于WebWorker的应用/210 把应用迁移到Web Worker上/212 让应用兼容Web Worker/214 单页应用的加载过程/216 启用了服务端渲染的SPA的加载过程/219 Angular 2中的服务端渲染/220 改善开发体验/221 各种文本编辑器和IDE/221 热重载/222 用angular-cli初始化项目/223 angular-cli的用法/223 Angular 2快速上手项目/224 Angular 2种子项目/224 针对Webpack的Angular 2入门项目/225 本章小结/225 博文视点 您阅读的专业智库 喜欢请分享至 朋友圈 了解更多本书详情请点击 阅读原文 长按二维码 轻松关注


发表回复