标签: web
为何现代 Web 开发如此复杂?
千里之行始于足下,本文就是针对 Web 开发演变的一系列概括介绍的第一篇内容:静态网站到 Babel 的演变
WebAssembly(wasm)到底是什么
WebAssembly的前身,asm.js诞生了。但是无论asm.js对静态类型的问题解决的再好,它始终逃不过要经过Parser和ByteCode Compiler,这也是JavaScript代码在引擎执行过程中最耗时的两步。
WebAssembly 到底处于编译阶段的哪个环节?
那为啥 WebAssembly 的性能就一定会比 JavaScript 好很多呢?具体原因还得看下它们到底是处于编译阶段哪个环节了。
恕我直言,90% 的应用场景都不需要用 WebAssembly!
本文阐述了 WebAssembly 诞生的背景,并从实践案例中分析了 WebAssembly 到底带来了多少性能提升。
专访:在 WebAssembly 的浏览器上运行《毁灭战士 3》
将标志性的《毁灭战士 3》游戏移植到了浏览器上。为期 7 周的全职投入,展示了当前 WebAssembly 在无缝运行重量级桌面应用程序和游戏方面的性能潜力和缺失的部分
带你走进 WebGL 中的图形噪声随机美学
大自然蕴含着各式各样的纹理,小到细胞菌落分布,大到宇宙星球表面。运用图形噪声,我们可以在 3d 场景中模拟它们,本文就带大家一起走进万能的图形噪声。
仅剩下Safari了:Firefox宣布支持谷歌的WebP图片格式
WebP是出于减少数据量、加速网络传输的目的而开发的。这是Google旧款VP8编码(已在2010五月开源)的衍生分支,在质量等同于JPEG的情况下压缩文件尺寸。
WebAssembly的未来:潜在新特性一览
。第2阶段(规范提议)包括BigInt转换。第2阶段(实现)包括引用类型和返回多个值。第4阶段(标准化)包括导出和导入可变全局变量和有符号扩展操作。
WebAssembly 和 Go语言:对未来的观望
当听到 WebAssembly(wasm) 最近支持 Go 语言时,我知道实验的时机已经成熟,并且迫切期待尝试。在尝试之前我读了些好文章,而这篇文章将记录我的一些体验。
阮一峰:Web Worker 使用教程
Web Worker 的作用,就是为 JavaScript 创造多线程环境,允许主线程创建 Worker 线程,将一些任务分配给后者运行。在主线程运行的同时,Worker 线程在后台运行,两者互不干扰。
进击的WebRTC:我们为什么需要它?
有人说2017年是WebRTC的转折之年,2018年将是WebRTC的爆发之年。去年,WebRTC 1.0标准草案出炉,并将于今年正式发布。与此同时,越来越多的浏览器和厂商都开始对它进行广泛的支持,WebRTC即将成为互联网的基础设施了。
Tobias Koppers:我当初为什么写webpack
Tobias Koppers是一位自由软件开发者,家住德国纽伦堡。他因写出webpack这个已有数百万开发者使用的开源软件而名噪一时。他目前专注于JavaScript和开源项目。以下是我对他个人的专访,希望对大家有所启发。
WebAssembly 能干什么?8个WebAssembly 应用案例
WebAssembly 的设计目标:定义一个可移植,体积紧凑,加载迅速的二进制格式为编译目标,而此二进制格式文件将可以在各种平台(包括移动设备和物联网设备)上被编译,然后发挥通用的硬件性能以原生应用的速度运行。
2018 年值得关注的 Web 设计趋势
网页设计在过去几个月已经发生了很大变化,我们迫不及待地想知道 2018 年会是什么样。2017 年是关于极简主义的一年,2018 年将给设计界带来更醒目的字体、鲜艳的色彩、用户互动的新的可能性。设计会比以往任何时候都更试图吸引我们的注意力,让我们在网站浏览的同时保持专注和投入。
WebAssembly得到了所有浏览器的支持
随着9月19日Safari和10月31日Edge的发布,苹果与微软加入了谷歌和Mozilla,在生成环境浏览器中提供了对WebAssembly的支持。这四家公司的浏览器都能运行编译为wasm二进制格式的代码。
Web 开发中的利器 – Webpack
ECMAScript2015 (第六版标准) 增加了很多 JavaScript 语言层面的模块体系定义。 ES6 模块的设计思想,是尽量的静态化,使得编译时就能确定模块的依赖关系,以及输入和输出的变量。(CommonJS 和 AMD 模块,都只能在运行时确定这些东西)
为什么说Web Audio API的设计是愚蠢的
Web Audio是一个我不明白的API。 Web Audio的范围绝对是巨大的,我无法想象任何人使用这功能,绝对昂贵的核心抽象和基本功能的缺失。引用规格本身:“这个规范的目标是包括现代游戏音频引擎中发现的功能以及现代桌面音频制作应用中的一些混合,处理和过滤任务。”
WebAssembly:解决 JavaScript 痼疾的一颗银弹?
提到了 WebAssembly,就必然首先提及对其有深远影响的 asm.js,这是 Mozilla 在 2013 年推出的一项新技术,它是 JavaScript 的一个子集,舍弃了大量会导致性能问题的语法,并且被设计为通过 C / C++ 代码编译生成,而非手工编写 asm.js 代码。上述的 sum 函数在 asm.js 中表现为:
Webpack 3.0正式发布,附新特性一览
Webpack 团队近日宣布正式发布Webpack 3.0 版本。在 2.0 版本发布之后,Webpack 团队与社区联系更为紧密,在优先实现社区希冀的功能需求的同时,提供了更快且更稳定的发布流程。对于本次发布的 Webpack 3.0 版本,用户可以便捷地平滑升级,享受新版本中带来的性能提升与 Magic Comment 等新特征。
WebAssembly,火狐赢了?
当然,Google和其他团队在WebAssembly标准的制定上也功不可没。针对PNaCl插件,Google已经发布了迁移文档。可以说,WebAssembly标准的发布,真正的赢家是开发者!
谷歌力推WebAssembly,要干掉JS?
虽然WebAssembly还比较新,但它已经被证明是快速响应Web应用程序和站点的有效方法。起初,WebAssembly被描述为“在网络上运行C ++的一种方式”,尽管我对C ++和Web都很热爱,但技术上总是模糊不清。直到2016年,我在Chrome开发工具峰会上再次听到这个消息,我决定尝试一下。
WebAssembly的工作原理
编译和优化阶段,WebAssembly 更具优势,因为 WebAssembly 的代码更接近机器码,而 JavaScript 要先通过服务器端进行代码优化。这就是为什么在大多数情况下,同一个任务 WebAssembly 比 JavaScript 表现更好的原因。
WebAssembly是个什么鬼?
WebAssembly 是除了 JavaScript 以外,另一种可以在浏览器中执行的编程语言。所以当人们说 WebAssembly 更快的时候,一般来讲是与 JavaScript 相比而言的。这里并不是暗示大家说开发时只能选择 WebAssembly或 JavaScript。实际上,我们更希望在同一个工程中,两个你同时使用。对二者的比较倒是非常有必要的,这样你就可以了解到 WebAssembly 所拥有的独特特性。
为什么浏览器里的WebAssembly能达到本地应用的速度?
当然,“快”是相对的概念。相比于 JavaScript 和其他动态语言,WebAssembly 的快主要是因为它的静态类型特性和方便优化特性。WebAssembly 意在速度上能够达到和本地执行一样快,其实 asm.js 已经比较接近这一目标了,但是 WebAssembly 要进一步缩短和本地执行速度之间的差距。因此本文着重介绍为什么 WebAssembly 比 asm.js 更快。
WebAssembly能否代替JavaScript,成为程序员的新宠?
除了Firefox,Google也在其Chrome浏览器和Chromium项目中拥抱了WebAssembly,所以作为一个程序员,你应该对WebAssembly引起足够的重视,未来快速加载Web应用程序的需求肯定会增加。
