hello一个html5-openui5项目,公司的编译系统在googlecc.xml(ant脚本)报了一个错,用googlecc做关键词搜了半天没弄清是什么东西,后来才发现是GoogleClosure Compiler。 不同于个人的小项目,企业级Web应用里面可能存在大量的Javascript代码。JS文件很多,文件块头还不小。不管是静态引入还是GoogleClosureLibrary/require.js这种模块化动态异步加载,下载时间长了,都会给Web用户带来不好的感知性能体验。很多Javascript压缩工具可以帮助减小JS文件大小,GoogleClosure Compiler就是其中一款。 谷歌2009年开源了其内部使用的JavaScript开发工具,Google Closure Tools,希望帮助程序员更高效地开发出富客户端Web应用程序。该工具集由如下工具组成:
- Closure Compiler:该优化器将JavaScript优化成紧凑、高性能的代码。它通过去除无用死代码、空格和注释、缩短长的局部变量名等方法压缩代码,检查语法、变量引用和变量类型,并对常见的JavaScript陷阱给出警告。
- Closure Library:功能广泛的,经过良好测试的,模块化的,跨浏览器的JavaScript库
- Closure Templates:客户端和服务器端模板系统,可以有助于动态生成可重用的HTML和UI元素。ClosureTemplates摒弃了一个页面使用一个(大)模板,而是针对单个小组件使用(小)模板,以便复用。该模板可生成JavaScript或Java代码,因此同一模板可在客户端或者服务端使用。
- Closure Linter:按照《谷歌JavaScript编程风格指南》 里面的指导方针对JavaScript代码进行编程风格检查和修复的工具
- Closure Stylesheets:支持很多谷歌扩展的增强格式表语言系统。可以定义和使用变量、函数、条件,以使格式表可读性增强、更易于维护。内建的工具可以将其编译成标准CSS。
阅读列表:
闭包:权威指南(Closure:The Definitive Guide) 部分翻译 前言 1 2 3 4 5
Google Closure Compiler –js压缩优化
Closure Compiler vs. YUICompressor
应用 closure compiler 高级模式
Closure Compiler 高级模式及更多思考
知乎为什么要选择 Closure Library 来作为 JavaScript 库,而不选择更流行的 jQuery 之流呢?
Google Closure Library介绍