写点什么

前端每周清单第 16 期:JavaScript 模块化现状;Node V8 与 V6 真实性能对比;Nuxt.js SSR 与权限验证指南

  • 2017-06-06
  • 本文字数:3617 字

    阅读完需:约 12 分钟

前端每周清单专注前端领域内容,分为新闻热点、开发教程、工程实践、深度阅读、开源项目、巅峰人生等栏目。关注【前端之巅】微信公众号(ID:frontshow),及时获取前端每周清单。

新闻热点

国内国外,前端最新动态

  • 《Prettier 1.4.0 发布》:Prettier 1.4.0 版本中最令人期待的特性就是对于 TypeScript ,与 CSS、Less 以及 SCSS 等样式语言的支持。TypeScript 是社区呼唤已久的特性,在该版本中我们可以直接使用 prettier 格式化 ts 或者 tsx 为后缀的文件;除此之外,新版本还优化了对于编辑器嵌入的支持。( https://github.com/prettier/prettier/releases/tag/1.4.0  )

  • 《Storybook 3.0 发布》:Storybook 3.0 版本带来了期待已久的 Webpack 2、create-react-native-app、Snapshot 测试等一系列新特性,同时修复了不少的 Bug 并且提升了整体性能。Storybook 3.0 版本是对于 Storybook 项目的代码组织与结构的极大调整检修,也是首个完整由社区驱动开  

    发的版本。(  https://parg.co/bi5  )

  • 《Meteor 1.5 发布》:近日,Meteor 宣布发布其 1.5 版本,大幅优化了生成的 JavaScript 包体尺寸,并且提升了页面加载速度。本文主要介绍了 Meteor 的发展历史、代码分割与动态导入、包体分析工具、不变的模块缓存等内容。(  https://blog.meteor.com/announcing-meteor-1-5-b82be66571bb  )

开发教程

步步为营,掌握基础技能

  • 《Nuxt.js SSR 与权限验证指南》:Nuxt.js 是基于 Vue.js 构建的服务端渲染框架,它允许开发者快速创建支持服务端渲染的应用;而本文则是介绍了利用 Nuxt.js 搭建应用并且为其添加权限验证模块的步骤。(  https://parg.co/bic  )

  • 《理解高阶组件》:即使 React 新手都应该听过所谓高阶组件或者容器组件的概念,而本文则是深入浅出地介绍了 React 中高阶组件的概念与意义,并且以实例介绍具体的使用方式与适用场景。作者首先介绍了无状态组件与全局状态的概念,然后对比了所谓容器与展示型组件的使用场景,最后介绍了常见的高阶组件。(  https://parg.co/biZ  )

  • 《N-API:下一代编写 Node.js 原生模块的接口》:Node.js 有着非常庞大而又生机勃勃的模块生态圈,这也是其一直保有活力与魅力的源泉。而现在的很多基于 C/C++ 编写的原生模块直接依赖于 V8 或者 NAN 接口,导致了它们缺乏稳定性的暴走,并且需要随着 Node.js 版本的更迭而不断变化或者重编译。而 N-API 则致力于解决这个问题,文本即是对于 N-API 的基本语法与当前状态的介绍。(  https://parg.co/bip  )

  • 《面向 Web 设计师与开发者的免费电子书合集》:本文介绍了十数本优秀的面向 Web 设计师与开发者的免费的电子书,涵盖了 CSS&HTML 基础、现代 JavaScript 开发、Git、PHP 等多个领域。(  https://parg.co/bis  )

  • 《在 Vue.js 中使用过滤器》:过滤器是 Vue 中常用的处理数据渲染结果的方式之一,我们首先需要明白过滤器并不是对于方法、推导值等的替代,毕竟它们并没有真实地转换数据,而只是对用户的可视结果进行了处理。自 Vue 2.0 之后框架本身并无内置的过滤器,而本文则是介绍了基本的过滤器的使用语法以及几个经典的使用场景。( https://css-tricks.com/using-filters-vue-js/  )

工程实践

立足实践,提示实际水平

  • 《Yarn 与 npm5 比较》:随着 Node.js 8.0.0 一起发布的 npm 5.0.0 不仅在性能上得到了极大提升,还通过引入类似于 yarn.lock 的 package-lock.json 文件来实现所谓可确定的包管理。本文则是介绍了所谓可确定的包管理的具体含义,以及 yarn 与 npm5 各自不同的实现方式与优缺性的比较。(  https://parg.co/bir  )

  • 《Node 8 与 Node 6 真实应用中性能比较》:Node 8 宣称带来了极大的性能提升,而本文作者则记录了其基于 React 的大型站点,从 Node 6 升级到 Node 8 前后的各项性能指标对比,从而量化的来反映 Node 8 带来的性能优化。作者横向比较了服务端渲染耗时、基于 Jest 的测试用例运行耗时、Webpack 编译耗时、NPM 安装耗时等几个方面,Node 8 相较于 Node 6 皆有更好的表现。(  https://parg.co/biu  )

  • 《hyperapp》:hyperapp 是仅 1KB 大小的用于构建前端应用的 JavaScript 库,它基于 Elm 架构,支持声明式界面编程与函数式编程,允许使用 JSX 声明界面并且灵活地分割与合并自定义的标签。hyperapp 实现的简洁明了,是不错的可以阅读源码的轻量级框架。(  https://github.com/hyperapp/hyperapp  )

  • 《HTTP 2 推送技术之难,真的远超我们想象》:在讨论页面加载性能问题时,我经常听到有人说“HTTP/2 推送可以解决这问题”,但我对这个技术的了解不多,于是打算深入研究一下。 HTTP/2 推送远比我最初想象中更复杂,也更底层,但最让我措手不及的地方在于,这种技术在不同浏览器上的表现竟然有这么大的差别,本来我还觉得这技术已经足够成熟,可以在生产环境中使用了。 本文并不是那种认为“HTTP/2 推送一无是处”的吐槽文。我觉得 HTTP/2 推送真的很强大,以后还会更加完善,但并不算能解决所有问题的万灵药。。(  https://parg.co/biR  )

  • 《这 WebAssembly,是 Mozilla 赢了》:Mozilla 提出1 asm.js 与 Google Chrome 提出的 PNaCI 是都是致力于在浏览器中运行原生代码的技术方案。不过 PNaCI 却存在着自绝于 JavaScript 以及 HTML 等问题,并且其他的浏览器厂商很难去支持 PNaCI 标准。而 asm.js 则以轻量级的对于标准 Web 平台扩展的方式实现了这一目标,也就导致了最终 WebAssembly 决定靠近 asm.js 而不是 PNaCI。(  http://robert.ocallahan.org/2017/06/webassembly-mozilla-won.html  )

深度阅读

深度思考,升华开发智慧

  • 《JavaScript 模块化现状》:近日随着各大浏览器纷纷开始支持 ESM(ECMAScript Moduls),Node.js 中也计划引入  *.mjs  作为 ESM 的文件扩展名,关于 JavaScript 模块化的未来发展也在社区引发了热切讨论。本文则是首先介绍了 ESM 在浏览器、Webpack 等构件工具以及 Node.js 中未来的实现,然后讨论了个人对于 ESM 未来发展以及对于程序开发本身的潜在影响。(  https://parg.co/bi0  )

  • 《数字化视频技术概述》:本文是面向所有有兴趣了解视频相关技术的同学的概述文章,希望以浅显易懂的文字,结合实例与可视化交互来一步一步地介绍视频处理相关的技术。目前主要内容包括了图片编码等基础名词与理论介绍、冗余移除、视频编码工作原理、在线视频流等相关内容。( https://github.com/leandromoreira/digital_video_introduction  )

  • 《我们为什么选择使用 React 生态》:本文是京东金融移动研发部工程师分享的它们对于前端框架、工具与方法的选择过程中的考虑。(  https://parg.co/biP  )

  • 《写给 CSS 的情书》:世人诟病 CSS 久矣,而本文作者则对于 CSS 一见钟情且矢志不渝。本文是一篇不错的了解不同端开发中样式设置方式的文章,作者介绍了从 Java Applets 开始到 Android、iOS 应用开发中界面样式与主题设置的方式与技术,论证了 CSS 相较于这些方式具有更好的灵活性与便捷性。(  https://parg.co/biC  )

  • 《现代软件开发中的常见过度技术化思维》:本文是 2016 年的一篇老文,不过读来也是感觉受益匪浅。本文讨论了软件开发中程序员常犯的过度技术化的思维方式,及其可能带来的不良结果,譬如轻视市场人员、过度重用业务逻辑代码、过度泛型化、过度依赖于质量检测工具等等。(  https://parg.co/bih  )

开源项目

乐于分享,共推前端发展

巅峰人生

前端之巅

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


感谢韩婷对本文的审校。

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

2017-06-06 19:002830
用户头像

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

关注

评论

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

食堂就餐卡系统设计

John

极客大学架构师训练营

【极客大学】【架构师训练营】【第二周】总结:设计原则

NieXY

极客大学架构师训练营

多个maven项目启动顺序

terrytian

maven

iOS & Android 去马赛克处理

liu_liu

ios android 去马赛克

MySQL InnoDB存储引擎 - 事务

Axe

基于业务表 Binlog 的事件驱动设计

理帆

MySQL 事件驱动 Binlog

设计原则与设计模式

dapaul

极客大学架构师训练营

LeetCode 655. Print Binary Tree

liu_liu

算法 LeetCode

ARTS Week5

丽子

每日一题-翻转字符串里的单词

程序员老王

LeetCode

wee1作业总结

牛珈羽

极客大学架构师训练营

循序渐进的中台研发

理帆

中台 业务中台

游戏夜读 | 《老残游记》很有趣

game1night

架构师训练营 - 第三周学习总结

清风徐徐

Redis系列(三):缓存过期该如何剔除?RDB和AOF又是什么?

z小赵

Java redis 高并发 高并发系统设计

centos7 操作

InfoQ_1c4a1f813eb1

【在云端 002】云时代,何以安放我的个人数据

Bora.Don

云计算 云存储

十五年后苹果再次变心

池建强

apple 苹果 芯片 wwdc

RabbitMQ跨机房迁移数据零丢失

心平气和

RabbitMQ 消息队列

区块链目前实际的应用场景汇总

CECBC

区块链技术 去中心化 应用场景

第四周 学习总结

冯凯

SpringBean的生命周期

编号94530

Java spring Spring Boot 生命周期

查找算法系列文(一)一文入门二叉树

淡蓝色

Java 数据结构 算法 二叉树

就餐卡系统架构设计文档

牛珈羽

极客大学架构师训练营

别兜售你自己不会购买的东西

Neco.W

创业 销售管理 销售

工作那么久,才知道的 SOLID 设计原则

闻人

架构师 极客大学架构师训练营

【极客大学】【架构师训练营】【第二周】依赖倒置原则和接口隔离原则

NieXY

极客大学架构师训练营

好奇心, 优秀软件工程师的内核品质

亚伦碎语

读书感悟 随笔杂谈

线性表(数组、链表、队列、栈)详细总结

淡蓝色

Java 数据结构 算法 链表 线性表

设计模式之单例模式和组合模式

dapaul

极客大学架构师训练营

网络性能篇 (13讲)

程序员老王

前端每周清单第 16 期:JavaScript 模块化现状;Node V8 与V6 真实性能对比;Nuxt.js SSR与权限验证指南_语言 & 开发_王下邀月熊_InfoQ精选文章