Web开发中的“黑话”

做者:戴嘉华html

转载请注明出处,保留原文连接和做者信息git

前言

在Web开发这个突飞猛进的时代,老是须要阅读一些最新的英文技术博客来跟上技术的发展的潮流。而有时候会遇到一些比较高频的“黑话”,在社区里面可能已是人人皆知的“共同语言”,而你接触的少就恰恰看不懂。就像如今几乎全部中国人都知道duang是什么东西,可是一个刚学中文的外国人看到之后可能就一头雾水。github

duang

黑话也是要学习的,本文收集各类Web开发的黑话。这里先介绍两个。canvas

Polyfill

Polyfill或者Polyfiller,是英国Web开发者 Remy Sharp 在咖啡店蹲坑的时候拍脑壳造出来的。当时他想用一个词来形容"用JavaScript(或者Flash之类的什么鬼)来实现一些浏览器不支持的原生API"。Shim这个已经有的词汇第一时间出如今他的脑海里。可是他回头想了一下Shim通常有本身的API,而不是单纯实现原生不支持的API。苦思冥想一直想不到合适的单词,因而他一怒之下造了一个单词Polyfill。除了他本身用这个词之外,他还给其余开发者用。随着他在各类Web会议演讲和他写的书《Introducing HTML5》中频繁提到这个词,你们用了都以为很好,就一块儿来用。浏览器

Polyfill的准确意思为:用于实现浏览器并不支持的原生API的代码。框架

例如,querySelectorAll是不少现代浏览器都支持的原生Web API,可是有些古老的浏览器并不支持,那么假设有人写了库,只要用了这个库, 你就能够在古老的浏览器里面使用document.querySelectorAll,使用方法跟现代浏览器原生API无异。那么这个库就能够称为Polyfill或者Polyfillerpost

好,那么问题就来了。jQuery是否是一个Polyfill?答案是No。由于它并非实现一些标准的原生API,而是封装了本身API。一个Polyfill是抹平新老浏览器 标准原生API 之间的差距的一种封装,而不是实现本身的API。学习

已有的一些Polyfill,如 Polymer 是让旧的浏览器也能用上 HTML5 Web Component 的一个PolyfillFlashCanvas是用Flash实现的可让不支持Canvas API的浏览器也能用上Canvas的Polyfill网站

这里有一堆Polyfills,有兴趣能够把玩一下:HTML5 Cross Browser Polyfillsurl

Vanilla JavaScript

Vailla JavaScript是目前世界上跨平台兼容性最好、最小、最快的JavaScript框架。它的官网为:http://vanilla-js.com/

vanilla.png

在官网上,你能够尝试能够选择不一样的功能模块自定义进行下载。可是无论你怎么选怎么下,下下来的js文件都是空的。好吧,这个网站自己就是个玩笑。Vanilla JavaScript指的就是纯原生的JavaScript,因此不须要任何代码。

在基佬百科上Vanilla的意思为:

Computer software, and sometimes also other computing-related systems like computer hardware or algorithms, is called vanilla when not customized from its original form...

在计算机软件领域中,若是你对原生系统没有作任何定制性的修改,就是Vanilla。你把Vailla当作是Pure或者Plain的意思都是能够的。Vanilla JavaScript就是Pure JavaScript的意思。

例如,我在巨硬官网下载了官方的xp系统镜像,这个系统就能够称为是vanilla的。可是若是你在国内某些网站下载了某些定制的盗版镜像,那就不是vanilla了。

参考资料

(待续未完)

相关文章
相关标签/搜索