热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

为什么_在疯狂的前端世界,为什么选择学习React

本文由编程笔记#小编为大家整理,主要介绍了在疯狂的前端世界,为什么选择学习React相关的知识,希望对你有一定的参考价值。
本文由编程笔记#小编为大家整理,主要介绍了在疯狂的前端世界,为什么选择学习React相关的知识,希望对你有一定的参考价值。




题图 | https://github.com/react-icons/react-icons


React Native 和 Prettier的作者之一、前端大牛、Twitter大V @Vjeux(Christopher Chedeau)建议前端人都来学习下 React,他给出的理由是:“React 和其他库的不同之处在于,它可以教会你一些概念,这些概念可以在你的开发生涯中反复使用。”


@Vjeux 在一本名为《
React全家桶:前端开发与实例详解
》的图书的推荐中写道:





Web 开发通常被视为一个疯狂的世界,在这个世界中,开发软件时需要考虑使用不同的代码解决浏览器兼容性问题。我相信 React 改变了这种局面,它的设计原则是帮你打下坚实的基础。


数据模型与 DOM 同步的过程是前端应用程序 bug 的一个主要来源。这是因为很难保证每当数据发生变化时,用户界面(UI)中的所有内容都会随之更新。React 最重要的创新之一是引入了用纯 Javascript 表示的 DOM,并在用户空间实现了差异对比,然后使用事件发送简单的命令,如 create(创建)、 update(更新)和 delete(删除)。


使用 React,任何变化都会重新渲染所有内容。你不仅拥有了默认安全的代码,而且工作量更少,因为你只需编写创建路径,不用关心更新。


长期以来,DOM 的 API 数量非常庞大,没什么浏览器能支持全部实现,这就导致浏览器的兼容性各有差异。React 不仅提供了一种解决浏览器差异的好方法,而且还支持前端库以前不可能实现的场景,比如服务器端渲染,以及在原生 iosandroid 甚至硬件组件上渲染的能力。


关于 React 最重要的一点,也是你应该阅读本书的主要原因是,它不仅可以帮助你为用户创建优秀的应用程序,还可以让你成为一名更优秀的开发人员。前端库总是兴起一段时间然后逐渐淡出人们的视野,React 也不例外。React 和其他库的不同之处在于,它可以教会你一些概念,这些概念可以在你的整个职业生涯中反复使用。


因为 React 没有附带模板系统,而是迫使你使用 Javascript 的全部功能来构建UI,所以你的 Javascript 技能会变得更好。


你将使用 map() 函数和 filter() 函数来体验函数式编程的部分功能,我们鼓励你使用 Javascript 的最新特性(包括 ES6)。由于没有抽象出数据管理,React 会迫使你考虑如何构建应用程序,并鼓励你考虑“不可变性”之类的概念。


我非常自豪的是,围绕 React 构建的社区勇于“重新思考最佳实践”。社区在许多领域挑战现状。我推荐你阅读这本优秀的著作来学习和理解 React 的基本原理。学习新概念可能会感到不适,你需要花 5 分钟练习,直到适应为止。


要试着打破规则。构建软件没有最好的方法,React 也不例外。实际上 React 接受了这一事实,当你不想按照 React 方式做事时,它也为你提供了一些方法。



想一些疯狂的点子吧,也许有一天你会发明出下一个 React 呢!




下面就是 @Vjeux 推荐的图书,也是很多读者在图灵社区不断催更的一本图书。






安东尼·阿科马佐 纳特·默里 阿里·勒纳 等 | 著

欧阳奖  | 译

| 图书特色



  • 透彻认识  React 全景图


  • “一站式”获取 React 系统知识和好工具


  • 手把手教你构建可靠且功能强大的 React 应用程序


本书分为两部分,全面介绍了React 的相关主题。第一部分通过例子循序渐进地讲解基础知识,包括创建一个投票应用程序、编写组件、处理用户交互、管理富表单,以及与服务器交互,此外还探索了 Create React App 的工作原理,编写自动化单元测试,以及使用客户端路由构建多页面应用程序。

第二部分探讨在大型应用程序产品中使用的更高级的概念——数据的架构、传输和管理的策略,讲解了 Redux、GraphQL、Relay。

Redux 是基于 Facebook Flux 架构的状态管理范式。它为大型状态树提供了一个结构,并允许将应用程序中的用户交互与状态更改解耦。

GraphQL 是一种功能强大、基于类型的 REST API 替代方案,其中客户端描述了所需的数据。我们还会介绍如何为你自己的数据编写 GraphQL 服务器。

Relay 是 GraphQL 和 React 之间的黏合剂。它是一个获取数据的库,有助于编写灵活、高性能的应用程序,且无须编写大量获取数据的代码。

最后一章将讨论如何使用 React Native 编写原生、跨平台的移动应用程序。







《React全家桶》目录一 / 左右滑动查看












在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React














《React全家桶》目录二 / 左右滑动查看












在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React










在疯狂的前端世界,为什么选择学习React










Amazon 原版 4.1 星评:


在疯狂的前端世界,为什么选择学习React

我去看了看原版书,关于这本书的组织、讲解、示例和全面程度有不少褒奖之词。因此,在品质上,属于比较可靠的 React 图书。最为难能可贵的是,为你搭建一个全景图式的 React 学习之路。如果需要本书的资料,请前往图灵社区本书页面下载:



https://www.ituring.com.cn/book/2673


需要这本书的同学,可以前来京东购买:

在疯狂的前端世界,为什么选择学习React



更 多 推 荐


如果你需要 React 进阶图书,请关注《深入React技术栈》与《React设计模式与最佳实践》。




在疯狂的前端世界,为什么选择学习React   
在疯狂的前端世界,为什么选择学习React


作者:陈屹



定价:79.00元






  • pure render 专栏主创倾力打造



  • 豆瓣评分 8.1,销量超过 17000 册



  • 覆盖 React、Flux、Redux 及可视化,帮助开发者在实践中深入理解技术和源码



  • 前端组件化主流解决方案,一本书玩转 React “全家桶”







本书从几个维度去介绍 React。一是作为 View 库,它怎么实现组件化,以及它背后的实现原理。二是扩展到 Flux 应用架构及重要的衍生品 Redux,它们怎么与 React 结合做应用开发。三是对 React 与 server 的碰撞产生的一些思考。四是讲述它在可视化方面的优势与劣势。






在疯狂的前端世界,为什么选择学习React   
在疯狂的前端世界,为什么选择学习React


作者:Michele Bertoli
译者:林昊
定价:59.00元









  • Facebook 前端工程师 15 年一线开发经验凝结



  • 深入探讨 React 核心模式与组件,创建可复用的代码和可扩展的设计







书中介绍了如何构建更加灵活、运行流畅、易于维护的应用,让开发人员在不降低质量的情况下极大地提升工作流的速度。读者将首先了解 React 的内部原理,开发能够在整个应用中复用的组件,搭建应用架构,创建真正可用的表单;随后会为 React 组件编写样式并优化组件,编写测试代码;最后还会学到如何为 React 及其生态系统做贡献。





图 灵 社 群


在疯狂的前端世界,为什么选择学习React







点个
「在看」



推荐阅读
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在iOS开发中,基于HTTPS协议的安全网络请求实现至关重要。HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer)是一种旨在提供安全通信的HTTP扩展,通过SSL/TLS加密技术确保数据传输的安全性和隐私性。本文将详细介绍如何在iOS应用中实现安全的HTTPS网络请求,包括证书验证、SSL握手过程以及常见安全问题的解决方法。 ... [详细]
  • 在ElasticStack日志监控系统中,Logstash编码插件自5.0版本起进行了重大改进。插件被独立拆分为gem包,每个插件可以单独进行更新和维护,无需依赖Logstash的整体升级。这不仅提高了系统的灵活性和可维护性,还简化了插件的管理和部署过程。本文将详细介绍这些编码插件的功能、配置方法,并通过实际生产环境中的应用案例,展示其在日志处理和监控中的高效性和可靠性。 ... [详细]
  • 在List和Set集合中存储Object类型的数据元素 ... [详细]
  • 本文探讨了在多DHCP服务器环境中如何创建和管理作用域,并提出了一种有效的备用DHCP服务器方案,以确保网络服务的高可用性和稳定性。通过详细的技术分析和实践操作,本文为网络管理员提供了一套完整的解决方案,帮助其更好地应对复杂的网络环境。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文以 www.域名.com 为例,详细介绍如何为每个注册用户提供独立的二级域名,如 abc.域名.com。实现这一功能的核心步骤包括:首先,确保域名支持泛解析,即将 A 记录设置为 *.域名.com,以便将所有二级域名请求指向同一服务器。接着,在服务器端使用 ASP.NET 2.0 进行配置,通过解析 HTTP 请求中的主机头信息,动态识别并处理不同的二级域名,从而实现个性化内容展示。此外,还需在数据库中维护用户与二级域名的对应关系,确保每个用户的二级域名都能正确映射到其专属内容。 ... [详细]
  • 为开发者提供了一系列实用的参考网站和资源链接,包括HTML速查手册( 和 ),帮助开发者快速查找和学习相关技术知识。此外,还涵盖了其他重要的开发工具和文档,为编程工作提供全面支持。 ... [详细]
  • SSL 错误:目标主机名与备用证书主题名称不匹配
    在使用 `git clone` 命令时,常见的 SSL 错误表现为:无法访问指定的 HTTPS 地址(如 `https://ip_or_domain/xxxx.git`),原因是目标主机名与备用证书主题名称不匹配。这通常是因为服务器的 SSL 证书配置不正确或客户端的证书验证设置有问题。建议检查服务器的 SSL 证书配置,确保其包含正确的主机名,并确认客户端的证书信任库已更新。此外,可以通过临时禁用 SSL 验证来排查问题,但请注意这会降低安全性。 ... [详细]
  • 在Java分层设计模式中,典型的三层架构(3-tier application)将业务应用细分为表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层结构不仅有助于提高代码的可维护性和可扩展性,还能有效分离关注点,使各层职责更加明确。通过合理的设计和实现,三层架构能够显著提升系统的整体性能和稳定性。 ... [详细]
  • 尽管我们尽最大努力,任何软件开发过程中都难免会出现缺陷。为了更有效地提升对支持部门的协助与支撑,本文探讨了多种策略和最佳实践,旨在通过改进沟通、增强培训和支持流程来减少这些缺陷的影响,并提高整体服务质量和客户满意度。 ... [详细]
  • Java测试服务器调试指南详细介绍了如何进行远程调试,并深入解析了Java Xdebug参数的使用方法。本文首先概述了Java内置的调试功能,重点介绍了JDB这一类似于GDB的强大调试工具。通过实例演示,读者可以掌握在测试环境中高效调试Java应用程序的技巧,包括配置远程调试环境和优化调试参数,以提高开发效率和代码质量。 ... [详细]
  • 七款高效编辑器与笔记工具推荐:KindEditor自动换行功能解析
    本文推荐了七款高效的编辑器与笔记工具,并详细解析了KindEditor的自动换行功能。其中,轻笔记QingBiJi是一款完全免费的记事本软件,用户可以通过其简洁的界面和强大的功能轻松记录和管理日常事务。此外,该软件还支持多平台同步,确保用户在不同设备间无缝切换。 ... [详细]
  • 深入解析:React与Webpack配置进阶指南(第二部分)
    在本篇进阶指南的第二部分中,我们将继续探讨 React 与 Webpack 的高级配置技巧。通过实际案例,我们将展示如何使用 React 和 Webpack 构建一个简单的 Todo 应用程序,具体包括 `TodoApp.js` 文件中的代码实现,如导入 React 和自定义组件 `TodoList`。此外,我们还将深入讲解 Webpack 配置文件的优化方法,以提升开发效率和应用性能。 ... [详细]
author-avatar
缤纷之铃6868
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有