HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

前端每周清单第 51 期: React Context API 与模式变迁, Webpack 与 Web 优化, AI 界面生成

  • 2018-02-22
  • 本文字数:3540 字

    阅读完需:约 12 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

前端每周清单专注前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点;分为新闻热点、开发教程、工程实践、深度阅读、开源项目、巅峰人生等栏目。欢迎关注【前端之巅】微信公众号(ID: frontshow),及时获取前端每周清单。

新闻热点

国内国外,前端最新动态

  • Chrome 即将标识所有的 HTTP 站点为非安全: 近日,Google Chrome 宣布,他们将会在 2018 年七月左右发布的 Chrome 68 版本中,开始把所有的 HTTP 站点标识为非安全;此举也可能标志着非 HTTPS 站点的终结。开发者可以使用最新版本的 Lighthouse Node.js 命令行工具来检测某个网站中是否存在了基于 HTTP 协议加载的资源,并且能够自动地判断是否已经有了相对应的 HTTPS 版本。
  • Rollup 开始支持代码分割: 在近日发布的 0.55 版本中,JavaScript 模块打包工具 Rollup 终于引入了代码分割,这个千呼万唤始出来的特性。一直以来,Rollup 都是 React, Vue, D3, Moment, Three.js, Ember, Angular, Babylon, Jest, Bootstrap, Leaflet, Prettier 这样的工具库的首选,而该特性的加入也意味着其逐步成为了应用打包工具的候选之一。
  • Microsoft Edge 与 Windows 10 进一步拥抱 PWA : Edge 17 即将内置 Service Workers 与 Push Notifications,同时 Microsoft Store 将会把那些手动提交的 PWA 应用于原生应用同等对待。本文即是 Microsoft Edge 技术团队对于 PWA 的介绍,对于它能够解决的问题的畅想以及未来如何在 Windows 10 中保证 PWA 的表现。

开发教程

步步为营,掌握基础技能

  • React 16.3 新特性介绍: React 16.3-alpha 近日登陆 npmjs,并且能够引入到项目中,本文即是对于 16.3 版本中的新特性进行介绍。该版本引入了新的 Context API,允许开发者使用 React.createContext() 生成两个关联组件;重构了生命周期回调,废除了 componentWillMount, componentWillUpdate, componentWillReceiveProps,引入了 getDerivedStateFromProps;提供了 StrictMode,以保证代码符合最佳实践;更新了 React Developer Tools 等。更多相关资料参考 React Reference
  • Service workers 介绍与使用: Service workers 可以看做 Progressive Web Apps 的核心组成,提供了资源缓存与通知推送的功能,这也是 Web 应用与原生应用当前的区别之一。 本文会包含 Service Worker 的基本概念与使用,具体讨论了后台处理、离线支持、资源预抓取、网络请求缓存、安装与基础使用等内容。更多相关资料参考 PWA Reference
  • React’s ⚛️ new Context API : 本文将会详细介绍 React 16.3 版本中提供的新 Context API,它主要包含了三个部分:React.createContext 允许输入初始值,并且返回包含 Provider 与 Consumer 的对象。Provider 组件被放置在组件树中的较高层,允许传入名为 value 的属性,而 Consumer 属性则可以放置在组件树的任意位置,通过传入渲染回调函数的方式来接收 value 参数。更多相关内容参阅 React 与前端工程化实践系列。

工程实践

立足实践,提示实际水平

  • GraphQL 应用中的五个常见问题与规避方案: 本文中,我们将会讨论如何尽可能地发挥 GraphQL 的长处而绕过其中的坑。作者在本文中讨论了以下内容:Schema duplication, Server/client data mismatch, Superfluous database calls, Poor performance and Boilerplate overdose 等。对于每个问题,作者首先进行了描述,然后介绍了在 Vulcan 的开发过程中是如何定位,并且解决的。更多相关内容参考 GraphQL Reference
  • Redux 模块与代码分割: Twitter Lite 一直在使用 Redux 作为其状态管理框架,并且在不断地寻找合适的模块与代码风格方案。虽然 Redux 默认的接口风格并非面向那种持续加载的情形,本文即是介绍了 Twitter Lite 如何通过合理的代码风格来支持渐进式代码加载,该模式已经在生产环境下经受了数年的检验。更多相关内容参考 Web 开发基础与工程实践系列。
  • Addy Osmani: 使用 Webpack 进行 Web 性能优化: 现代 Web 应用常常会使用所谓的构建工具来创建部署到生产环境的包体,该包体往往是被优化的、压缩的,尽可能减少用户的消耗。本文则是 Addy Osmani 编写的,基于 Webpack 的 Web 性能优化教程,讨论了如何利用代码分割等特性来移除不用的代码片,并且尽可能压缩包体,来保证最小的网络消耗与处理时间。更多相关内容参考 Web 开发基础与工程实践 / 性能优化系列。

深度阅读

深度思考,升华开发智慧

  • React 模式演化: 本文将会深度探讨 React 生态圈中流行的架构模式,这些架构模式能够提升代码的可读性,清晰性,并且保障代码的可组合性与可重用性。本文将会依次介绍 Conditional Render, Passing Down Props, Destructuring Props, Provider Pattern, High Order Components, Render Props, 等等模式。更多相关内容参阅 React 与前端工程化实践系列。
  • 前端面试手册: 不同于传统的软件工程师的技术面试,前端工程师的面试可能较少地关注算法,更多地瞩目于交互相关以及 HTML,CSS,JavaScript 这些领域相关的知识。本文作者在遍寻了现存的面试手册之后,未发现有完全满意的,前端相关的面试手册;因此编写了此文,以共享自己在前端工作中的知识积淀,本文也可以看做对于著名的 Front-end Job Interview Questions 的回答。更多相关内容参考 Awesome Web Reference
  • 如何训练能够将设计稿转化为 HTML 与 CSS 的 AI 程序: 随着人工智能与深度学习技术的发展,我们也可以预见它们将逐步地改变前端开发中的一些领域。AI 能够帮助我们提升原型构建的速度,降低软件构建的门槛。这两年来,随着 Tony Beltramelli 的 pix2code paper 以及 Airbnb 开源 sketch2code ,我们可以逐步地使用 AI 来帮助我们构建简单的页面。不过,目前前端开发自动化方面最大的瓶颈可能就是计算能力,但是这并不妨碍我们来学习了解相关的深度学习基础算法,以及如何训练数据,如何使用模型来进行界面转换。本文中,作者会循序渐进地带领读者来构建基础的,能够将某个设计稿转化为 HTML 与 CSS 代码的神经网络。更多相关内容参阅 Awesome Web Reference
  • 2018- 有货移动 Web 端性能优化探索实践: 在移动互联网的时代里,对于一个 Web 站点来说,移动端的用户体验尤为重要。现代 web 站点的设计和开发都是以移动优先作为第一原则,我们也专门为了移动端的 Web 站点做了相应的优化和提升。这个过程中任何一个环节的延迟都会造成性能瓶颈,降低用户继续访问的可能性,所以我们在服务器端,浏览器端,网络加载,多个方面做了一系列的优化工作。

开源项目

乐于分享,共推前端发展

  • Automerge : Automerge 是类似于 JSON 的,能够用于构建协同 JavaScript 应用的数据结构。其核心特性在于允许多个用户并发修改,并且会进行自动地合并;目前,很多的 JavaScript 应用会将状态保存在 JSON 文档这样的模型中,Automerge 即可以保证这种使用的一致性,还能够提供原子化同步与合并等扩展功能。
  • winamp2-js : winamp2-js 是利用 HTML5 与 JavaScript 对于 Winamp 2.9 的覆写,包含了如下特性:支持动态换肤,支持通过拖拽的方式加载本地皮肤文件或者资源文件,支持自定义操作按钮等。
  • Rekit : Rekit 是完整的,开发基于 React,Redux,与 React Router 应用的工具集与解决方案。Rekit 首先提供了包容万象的编辑器,帮开发者自动进行了项目构建与文件布局,从而使得开发者能够更加专注于业务逻辑,而不是无止境的库、模式、配置文件等等。Rekit 提供了 opinionated 的架构模式,通过面向特性的分割方式,来保证应用的可扩展性、可测试性与可维护性。
  • WebAssembly Studio : WebAssembly Studio 是在线学习、实践、运行 WebAssembly 的工作台,它提供了基于 Web 的 IDE,支持用户将 C++ 或者 Rust 编译为 WebAssembly。同时,用户也可以本地运行该 Studio,只需要安装 Node.js 与 Webpack 然后运行即可。

巅峰人生

  • N26 是如何利用 JavaScript 构建面向银行业的微服务系统: N26 是来自德国的银行业初创项目,其 CTO Patrick Kua 在 ThoughtWorks 工作了十三年,积累了丰富的软件相关经验,并成功地带领技术团队为数十万用户提供优质的银行业服务。本文以对话的方式,注重于讨论 Patrick 的团队时如何选择语言与框架,如果处理测试、DevOps 以及持续集成等操作,如果部署微服务并提供高可用的服务。

前端之巅

「前端之巅」是 InfoQ 旗下关注前端技术的垂直社群,加入前端之巅学习群请关注「前端之巅」公众号后回复 “ 加群 ”。投稿请发邮件到 editors@cn.infoq.com,注明 “ 前端之巅投稿 ”。


感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-02-22 18:001690
用户头像

发布了 60 篇内容, 共 17.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

阿里云ubuntu服务器搭建ftp服务器

百度搜索:蓝易云

Linux下搭建Java环境[IDEA,JDK8,Tomcat]

百度搜索:蓝易云

谈后端人眼里的nvm、yarn、pnpm……

北桥苏

taro npm YARN NVM pnpm

WorkPlus:为企业内部打造高效沟通的顶级内部通讯软件

WorkPlus

告别低效!10款项目管理办公室系统深度对比

爱吃小舅的鱼

项目管理 办公系统

长电科技2024年2季度归母净利润环比增长258%,营收创同期历史新高

财见

【Java代码规范】阿里编码规约 VS CheckStyle

百度搜索:蓝易云

解锁跨境购物新体验:淘宝代购集运系统——跨越语言与物流的桥梁

代码忍者

代购系统

目前市面上最好用的分布式存储体验(天翼云 HBlock)

武师叔

HBlock

TCL电子(01070.HK)2024年上半年经调整归母净利润同比大增近1.5倍

财见

51Talk发布2024年Q2财报:国际业务净收入同比增长75.1%

财见

游戏服务器是什么意思?游戏服务器可以用云服务器吗?

百度搜索:蓝易云

破解IPv4困境 迎接IPv6新纪元 国家为何力推IPv6?

郑州埃文科技

ipv6 IP地址

金融涉诈账户压降行动的实施成效与挑战

芯盾时代

金融 反欺诈 账户安全

参加AIGC 应用实战营的一点感受

Lee Chen

【KDD2024】大数据基础工程技术集群异常检测论文入选

阿里云大数据AI技术

数据挖掘 大数据 阿里云 异常检测算法

HTTP与HTTPS的不同

德迅云安全杨德俊

如何在Ubuntu 20.04|18.04上安装FreeSwitch

百度搜索:蓝易云

解读GaussDB(for MySQL)表级恢复,看线程数及分块分行策略如何提升恢复性能?

华为云开发者联盟

企业号 8 月 PK 榜 企业号2024年8月PK榜

Redis面试都卷到C语言去了。。。

江南一点雨

Transit Technologies通过收购Bytecurve进入K-12软件市场

财见

Easysearch 性能测试方法概要

极限实验室

数据库·

重磅奖项:时序数据库 IoTDB 荣获中国创新创业大赛北京赛区新一代信息技术决赛三等奖

Apache IoTDB

应用如何快速实现云原生化?华为云DTSE解读关键策略

华为云开发者联盟

企业号 8 月 PK 榜 企业号2024年8月PK榜

What's new in PikiwiDB(Pika) v3.5.5

apache/dubbo-go

redis Pika

《AIGC应用实战营》毕业总结

AI应用

量化合约系统开发说明分析,合约量化系统开发详细流程

V\TG【ch3nguang】

交易所系统开发如何开发?数字货币交易所系统开发成熟技术讲解

V\TG【ch3nguang】

天谋科技项目时序数据库 IoTDB 荣获 HICOOL 2024 全球创业大赛决赛二等奖!

Apache IoTDB

如何处理 MySQL 主从延迟?

江南一点雨

Java MySQL

移动应用平台,企业移动门户就选WorkPlus

WorkPlus

前端每周清单第 51 期: React Context API 与模式变迁, Webpack 与 Web 优化, AI 界面生成_语言 & 开发_王下邀月熊_InfoQ精选文章