微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React第2版:引领未来的用户界面开发框架

基本信息

编辑推荐  

√ 煊赫一时的领域首著,启蒙万千读者后再洒甘霖,携重大内容代码升级重装上阵
√ Fackbook开源巨献 React,已迅速被广大前端攻城狮所熟知并应用到各种真实场景
√ 无论传统网站还是移动开发,尤其跨终端Web,都已彻底逃不开 React 的耀眼光芒
√ BAT等一线IT企业快速跟进研发、部署,让React行情持续看涨,职业前景一片光明

内容简介

书籍
计算机书籍
Facebook的开源框架React.js,基于Virtual DOM重新定义了用户界面的开发方式,彻底革新了大家对前端框架的认识,将PHP风格的开发方式迁移到客户端应用开发。其优势在于可以与各种类库、框架搭配使用。《React(第2版):引领未来的用户界面开发框架》由多位一线专家精心撰写,采用全程实例介绍和剖析了React.js的方方面面,适合广大前端开发者、设计人员,以及所有对未来技术趋势感兴趣者阅读。《React(第2版):引领未来的用户界面开发框架》前版作为React首作推出之后,React生态继续蓬勃发展,技术及社区都在不断推陈出新。《React(第2版):引领未来的用户界面开发框架》诸位专家作者适时推出新版,全面更新示例,用 ES6重写代码,摒弃社区弃用范式,新增无状态组件、不可变数据、Redux等热点内容。阅读《React(第2版):引领未来的用户界面开发框架》书,不但可以夯实 React开发基础,更能全方位紧跟整个React生态!

作译者

寸志,资深前端架构师,陆金所前端团队leader。范洪春,阿里巴巴(中国)网络技术有限公司前端工程师。 杨森,阿里巴巴(中国)网络技术有限公司前端工程师。 题叶,饿了么资深前端工程师。 本书由一个团队编写而成,这个团队的成员都是一些经验丰富且专注于JavaScript 的开发者。 __eol__Tom Hallett 是一位高级Ruby 和JavaScript 工程师,在Tout.com 工作(Tout.com 是一个实时视频平台,办公地点在旧金山)。他是jasmine-react 的作者,jasmine-react 是一个开源的类库,旨在帮助开发者使用测试框架Jasmine 测试React 应用程序。在Twitter(@tommyhallett)和Github(@tommyh)上都可以找到他。他的爱好是打水球,以及与妻子和儿子待在一起。 __eol__Richard Feldman 是旧金山教育科技公司noredInk 的前端工程师。他是一个函数式编程爱好者,会议发言人,还是seamlessimmutable的作者。seamless-immutable 是一个开源类库,可以提供不可变的数据结构,向后兼容普通的JavaScript 对象和数组。Richard 在Twitter 和Github 上都叫@rtfeldman。 __eol__Simon Højberg 是一个高级UI 工程师,在罗德岛普罗维登斯市的Swipely 公司工作。他是普罗维登斯市线下JS 见面会的核心组织者,之前还是波士顿创业学院的JavaScript 讲师。他一直在使用JavaScript 开发功能性的用户界面,也会开发一些像cssarrowplease.com 这样的业余项目。Simon 的Twitter 是@shojberg。 __eol__Karl Mikkelsen 是LockedOn 的一位高级PHP 和JavaScript 工程师,工作是开发外观漂亮且功能强大的房地产软件。Karl 对新技术充满热情,喜欢学习以不同的方式做事。如果你在网上(http://karlmikko.com)找不到他,那他很可能在和妻子攀岩或者在喝咖啡。 __eol__Jon Beebe 在Dave Ramsey 的数字开发团队里开发应用,专注于一些面向用户的技术,例如Web 和iOS。在这之前,他开发过PHPWeb 服务,也为Final Cut Pro 和Motion 写过插件。他以能够把艺术和代码结合到一起为乐。他的网名是@bejonbee。他自诩是一个热衷阅读的人,喜欢摄影,并且以超出妻子的日常期望为自己的目标。 __eol__Frankie Bagnardi 是一位高级前端工程师,为多种不同的客户端创造用户体验。在业余时间里,他会在StackOverflow(FakeRainBrigand)和IRC(GreenJello)上回答问题,或者开发一些小项目。你可以通过f.bagnardi@gmail.com 联系他。

目录

推荐序1 III
推荐序2 V
推荐序3 VII
前言 IX
第 1 章?React 简介 1
背景介绍 1
本书概览 3
Component的创建和复合 3
进阶 5
React工具 6
React实践 6
第 2 章?JSX 8
什么是JSX 9
使用JSX的好处 10
更加熟悉 10
更加语义化 10
更加直观 11
关注点分离 12
复合组件 12
定义一个自定义组件 12

前言

  React 是什么,为什么要使用它
  React是Facebook内部的一个JavaScript类库,已于2013年开源,可用于创建web用户交互界面。它引入了一种新的方式来处理浏览器DOM。那些需要手动更新DOM、费力地记录每一个状态的日子一去不复返了--这种老旧的方式既不具备扩展性,又很难加入新的功能,就算可以,也是冒着很大的风险。React使用很新颖的方式解决了这些问题。你只需声明式地定义各个时间点的用户界面,而无须关心在数据变化时需要更新哪一部分DOM。在任何时间点,React都能够以最小的DOM修改来更新整个应用程序。
  本书内容
  React引入了一些激动人心的新概念,向现有的一些最佳实践发起了挑战。本书将会带领你学习这些概念,帮助你理解它们的优势,创建具备高扩展性的单页面应用(SPA)。
  React把主要的注意力放在了应用的"视图"部分,没有限定与服务端交互和代码组织的方式。在本书中,我们将介绍目前的一些最佳实践及配套工具,帮助你使用React构建一个完整的应用。
  本书面向的读者
  为了更好地掌握本书的内容,你需要有JavaScript和HTML相关开发经验。倘若你做过SPA应用(什么框架不重要,Backbone.js、Angular.js或者Ember.js都可以)那更好,但这不是必需的。
  源码和示例
  一些来自Reddit克隆示例项目的代码片段会贯穿在整本书中。你可以在http://git.io/vlcpa浏览完整的代码,到http://git.io/vlCUI可以看到在线的demo。
  编写过程
  我们把本书当作一本虚拟的电子书编写,用一到两个月的时间快速迭代。这种方式有助于创建新鲜及时的内容,而传统书籍往往无法覆盖最新的趋势和技术。
  这是本书的第2版,所有的示例代码都更新到了React 0.14版,而且有了一个新的示例项目。
  作者
  本书由一个团队编写而成,这个团队的成员都是一些经验丰富且专注于JavaScript的开发者。
  Richard Feldman是旧金山教育科技公司noredInk的前端工程师。他是一个函数式编程爱好者,会议发言人,还是seamless-immutable的作者。seamless-immutable是一个开源类库,可以提供不可变的数据结构,向后兼容普通的 JavaScript 对象和数组。Richard在Twitter和Github上都叫@rtfeldman。
  Frankie Bagnardi是一位高级前端工程师,为多种不同的客户端创造用户体验。在业余时间里,他会在StackOverflow(FakeRainBrigand)和IRC(GreenJello) 上回答问题,或者开发一些小项目。可以通过f.bagnardi@gmail.com联系他。
  Simon H jberg是一个高级 UI 工程师,在罗德岛普罗维登斯市的Swipely公司工作。他是普罗维登斯市线下JS见面会的核心组织者,之前还是波士顿创业学院的JavaScript讲师。他一直在使用JavaScript开发功能性的用户界面,也会开发一些像cssarrowplease.com这样的业余项目。Simon的Twitter是@shojberg。
  Jeremiah Hall现在OpenGov Inc任职高级软件工程师/架构师,他还是Aspect Apps的创始人,该应用使用React Native和 JavaScript来构建一个日志应用的UI。在Twitter可以通过@jeremiahrhall找到他。

书摘

  推荐序1
  时光回溯。
  2011年我离开Google转而加入Facebook,从事移动互联网(Mobile Web)的核心产品开发工作。
  随着时间的推移,工作上逐渐取得了许多有意义的巨大进展,同仁们也都深以此为傲。然而不是所有的事情都进展得特别顺利。其中一个很大的问题与挑战就是因为HTML5 的技术限制与性能瓶颈,许多产品的开发工作受到了限制。
  2012年Facebook公开了一件很多人深有体会却不想说出口的事实,那就是HTML5之类的Web技术并未成熟到能够担任产品开发工具重任的程度。在很多方面,使用原生代码(native code)开发仍然是必要的选项。
  对于很多包括我在内的Mobile Web开发者来说,这样的情况是一个让人失望却又不得不接受的事实。
  2013年年初,我离开工作两年多的移动互联网开发部门,转而投入广告部门,从事桌面富客户端(Rich App Client Application)的开发工作。
  虽然Mobile Web的进展不如预期理想,但此时在Desktop Web方面,事情却有了有意思的变化。
  当时我参与的新项目主要是要使用一种叫作React的新平台技术,将当时广告部门的一个主要产品重构。项目的有趣之处在于,产品的视觉外观与功能将不会也不能有任何变化,但是内部执行的代码将会是以React打造的。
  由于项目的目标为实际上线且对公司营收有重要影响的产品,所以项目的挑战除了在于应用React这门新技术之外,维持产品本身的稳定当然也是不可妥协的目标。
  所幸,项目顺利达标,而同仁们也对于React这门技术有了更丰富的经验与更强的信心。就连React本身也快速吸收众人的回馈,快速演进。
  我从事Web前端开发工作已经十年,有幸亲身经历众多重大的技术变革与范式转移。我可以负责任也很喜悦地说,作为一门新生技术,React及其相关工具对于从事Web开发的人来说,将会产生巨大且革命性的影响。
  虽说React初始是为了解决Facebook广告部门在产品开发上遇到的很多实际问题,但实际应用的层面却非常广泛。
  2015年Facebook也开源了ReactNative,让React能够在iOS移动终端执行(对Android的平台支持预计为2015年年底)。
  由于React的特殊设计,React消弥了客户端与服务器端的开发界线。最近的发展则更进一步衍生到Mobile Native App与其他非传统Web(HTML+CSS)的执行环境。
  无论你是有多年经验的开发者,或者是刚入门的新人,此时选择React都会是一个很好的选择。
  React 可以解决很多传统Web开发架构碰到的艰难问题,同时由于它是一门新生技术,开发者将更有机会掌握一门强大的开发工具,解决更深入的艰难问题并提升产品开发的质量与境地。
  作为一本入门书籍,本书提供基本但足够的范例与介绍,着重在实际的代码与操作应用,可以让读者快速学习React的相关知识与技术,并实际打造可执行的程序。
  相信对于需要使用React 开发的人来说,这将会是一本不错的入门参考。
  必须要补充的是,目前由于React还在Beta版本阶段,本书的内容主要是以v0.12为主。目前公开的最新版本为v0.13,书中提到的API将会略有差异,细节方面可以在它的官方网站上查询(https://facebook.github.io/react/blog/2015/02/24/streamlining-react-elements.html)。

↓展开全部内容

原文地址:https://www.jb51.cc/react/304889.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐