前端小报 - 201812 月刊

2023-11-09 10:50

本文主要是介绍前端小报 - 201812 月刊,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

订阅 / 投稿: https://github.com/txd-team/monthly
本期小编:  Hkmu (扶容) /  x-cold (尹挚)

新闻快报

  • npm 发布 2018 年的生态数据,预测 2019 年新趋势

JavaScript 越来越受欢迎,而 npm 是 JavaScript 库的管理中心,目前拥有超过 836,000 个库,是世界上最大的开源库集合。

回顾 2018 年,npm 正在被用在越来越多的场景下,包含浏览器,服务端,移动支持,IoT / 机器人等方面;另外可以看到现在 Web 应用程序中大量依赖 npm,占其代码总量的 97%;npm 本身在 2018 年加入了 NSP 安全审计,更加注重包的安全管理(当然今年也发生了不少的 npm 包事件,参考工具推荐部分的“翻车现场”)。更多关于 npm 有趣的一些趋势可以浏览前端之巅翻译的报告,英文好的同学可以参考原始报告。

  • Rollup 发布 v1.0 版本

从 Rollup 出现到现在已经接近 3 年半的时间,带来了让人眼前一亮的 Tree Shaking 等特性,前端应用的项目构建上我们使用的频率可能相对低一些,而在一些库/框架的开发中经常会用到它,包括 React, Vue 也在使用。在 2018 年 12 月 28 日,Rollup 终于发布了 1.0.0 版本,结束了 0.x.x 时代。当然,升级到最新版本的 Rollup 需要改动不少的配置,参见更新日志。

  • Babel 7.2.0 发布,支持私有实例方法

关于私有作用域 (Private Fields) 的支持已经进入最新的提案中,Babel 的更新支持意味着我们可以在语言层面直接在我们的类 (Class) 中定义私有的变量和方法了,可以参考下面的示例:

class Person {#age = 19;#increaseAge() {this.#age++;}birthday() {this.#increaseAge();alert("Happy Birthday!");}
}

在这个提案之前,我们也可以通过下划线命名,Symbol 命名,闭包和 ES6 Proxy 等方式来实现私有作用域,可以参考这篇文章。关于 Babel 7.2.0 带来的更多特性可以读一下官方的更新日志。

  • AI 也能帮你写代码 (TypeScript / JavaScript / Python / C++ / C#) 了!!!

微软和 IntelliCode 团队一起推出 Visual Studio IntelliCode 扩展,预览版可以在 VSCode 插件市场直接查找「Visual Studio IntelliCode」安装。在我们编写代码的时候,插件会自动给出推荐的编码补全,当然它不只是个语法的提示工具,它的做法是根据编码的上下文来提供智能的建议,赶紧安装体验吧~

intellicode_3.gif

  • 2019 年十款流行的 Node.js 框架

文章介绍了框架带来的收益以及如何选择适合的框架,并且对比了 10 款目前流行的 Node.js 框架,包括老牌的 Express、Meteor,以及一些新兴框架,例如 Adonis, Nest 等。感兴趣的同学可以阅读原文。

值得一提的是,在诸多框架横空出世的黄金开发时代,框架之间更多是特性的互补,所以并没有必要去分出高下,更重要的是选择跟业务成长相契合的框架。另外作者列举的更多的是海外流行的框架,其实国产的 Egg, ThinkJS 也已经有不少的企业级实践,感兴趣的可以到对应的 Github 仓库继续深入了解。

  • 阿里开源企业级设计系统最佳解决方案 Fusion

2018 年 12 月 16 号,Fusion Design 在 OSC 深圳源创会年终盛典上正式开源,它是阿里巴巴耗时近三年打造的企业中后台解决方案,关于 Fusion 的详细介绍可以参考这里。

  • 微软宣布 Edge 将采用 Chromium 内核

这对于诸多的前端开发者而言,无疑是本年底最大的福音~!具体的计划可以参考官网的博客,在不久的将来,基于 Chromium 的 Edge 浏览器将要正式和我们见面啦。

Github Trending

洞察 Github 近期 Hot Fresh Repository
  • Magic-Grid

一款简单易用,轻量级的动态布局的 JavaScript 库,与它的名字不同,Magic-Grid 不是 CSS Grid 库,它支持弹性布局/瀑布流等,还提供了一个支持 Vue 的版本。

  • nodebestpractices

大型 Node.js 最佳实践的精品总结和分享,里面包含了丰富的使用场景及最佳实践(附带解释),阅读这本大型书籍也能收获不少关于 Node.js 的知识。

  • sharp

高性能的 Node.js 图像处理模块,图像处理又多一种新的选择。

  • bloomrpc

不容错过的 GPRC 服务可视化客户端,可以理解为 HTTP 之 Postman, GraphQL 之 Playground,GRPC 之 BllomRPC。

  • devhub

Github 社交聚合平台,个人认为更像是个人工作台,支持 Web, iOS, Android, Desktop 多平台,如果你是 Github 用户,这里可能提供了你想要的一切。

  • rrweb

rrweb 是 'record and replay the web' 的简写,旨在利用现代浏览器所提供的强大 API 录制并回放任意 Web 界面中的用户操作。

  • notable

一款基于 Markdown 的笔记应用程序,支持无限文件夹 / 标签管理,喜欢纯粹的 Markdown 编辑体验的同学可以尝试使用一下,README 文件中有和其他竞品对比的报告。

精品学习

  • 前端该知道些密码学和安全上的事儿

在这个经常翻车的年代,网络安全逐渐受到重视。在前端这个开放的世界中,开发人员更应该对安全有所了解,并在自己的应用程序中部署适当的安全工具和策略,保护用户隐私以及系统的安全运行。文章阅读时间约 15 分钟。

  • Why review code

如何保证代码的交付质量?结对编程是否有科学依据?实际上,Code Review 无论是在软件工程体系,亦或是开源社区的运行秩序中,都是非常重要的环节。正确的 Code Review 姿势不仅能提高代码质量,降低故障发生的风险,还能给团队开发带来效能的提升。如果你的团队还没有 Review 代码的习惯,不妨来看下燕燕翻译的这篇博客。文章阅读时间约 10 分钟。

工具推荐

  • quicklink

还记得曾今的 WAP 时代吗?当我们在浏览网页的时候,经常能看到一个绿色的下一页按钮,点击之后可以“几乎无刷新”的跳转到新的页面中,它其实是一种预加载的策略。现在 quicklink 也可以给普通的 Web 应用程序提供类似的能力,使用它我们可以让浏览器在空闲的时间预先将用户即将访问的页面预先缓存,从而极大地提高了切换页面的速度。

  • ncc

可以将 Node.js 模块打包成单个文件的神奇工具,让你的模块最小化。这种打包的方式非常适合一些需要更“纯粹”的交付场景,比如 serverless,通过 ncc 我们可以很轻松地把应用程序及依赖转换成单个文件进行交付。

  • npq

最近半年发生的 npm 事故稍微有些频繁,因此通过 npm 安装一个靠谱的 package 和 version 非常重要。npq 会在安装之前进行前置的检查,其中包括了安全扫描、包的发布时间、热度、安装脚本分析等。另外带大家回顾一下今年的大型翻车现场:

debug:visionmedia/debug#603
React:facebook/react#14208
event-stream:https://zhuanlan.zhihu.com/p/50938220

这篇关于前端小报 - 201812 月刊的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375671

相关文章

CSS place-items: center解析与用法详解

《CSSplace-items:center解析与用法详解》place-items:center;是一个强大的CSS简写属性,用于同时控制网格(Grid)和弹性盒(Flexbox)... place-items: center; 是一个强大的 css 简写属性,用于同时控制 网格(Grid) 和 弹性盒(F

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

CSS Anchor Positioning重新定义锚点定位的时代来临(最新推荐)

《CSSAnchorPositioning重新定义锚点定位的时代来临(最新推荐)》CSSAnchorPositioning是一项仍在草案中的新特性,由Chrome125开始提供原生支持需... 目录 css Anchor Positioning:重新定义「锚定定位」的时代来了! 什么是 Anchor Pos

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

全面解析HTML5中Checkbox标签

《全面解析HTML5中Checkbox标签》Checkbox是HTML5中非常重要的表单元素之一,通过合理使用其属性和样式自定义方法,可以为用户提供丰富多样的交互体验,这篇文章给大家介绍HTML5中C... 在html5中,Checkbox(复选框)是一种常用的表单元素,允许用户在一组选项中选择多个项目。本

HTML5 搜索框Search Box详解

《HTML5搜索框SearchBox详解》HTML5的搜索框是一个强大的工具,能够有效提升用户体验,通过结合自动补全功能和适当的样式,可以创建出既美观又实用的搜索界面,这篇文章给大家介绍HTML5... html5 搜索框(Search Box)详解搜索框是一个用于输入查询内容的控件,通常用于网站或应用程

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

html 滚动条滚动过快会留下边框线的解决方案

《html滚动条滚动过快会留下边框线的解决方案》:本文主要介绍了html滚动条滚动过快会留下边框线的解决方案,解决方法很简单,详细内容请阅读本文,希望能对你有所帮助... 滚动条滚动过快时,会留下边框线但其实大部分时候是这样的,没有多出边框线的滚动条滚动过快时留下边框线的问题通常与滚动条样式和滚动行

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv