![]() |
|
Original author(s) | |
---|---|
Initial release | November 5, 2009 |
Stable release |
20160822
|
Available in | JavaScript |
Type | Ajax framework |
License | Apache License 2.0 |
Website | developers |
Google Closure Tools is a set of tools to help developers build rich web applications with JavaScript. It was developed by Google for use in their web applications such as Gmail, Google Docs and Google Maps.
The Closure Compiler is a tool for making JavaScript download and run faster, at the expense of human readability. It does not compile from JavaScript to machine code, but rather compiles from JavaScript to more efficient JavaScript. It parses JavaScript, analyzes it, removes dead code and rewrites and minifies what's left. It also checks syntax, variable references, and types, and warns about common JavaScript pitfalls. It supports transpiling some ECMAScript 6 code to ECMAScript 3, so that programmers can write JavaScript that uses those features, and run it in browsers or other environments that don't yet support them. (The Traceur Compiler is another Google project that supports transpiling ES6 to ES3.) Closure source code can be compiled in three ways:
The Closure compiler also supports type checking via type annotations that must be written in JSDoc comments.
Programming languages that transpile to JavaScript benefit from Closure Tools. For example, Closure Compiler helps to make ClojureScript practical by making the compiled JavaScript code more efficient.
The Closure Library is a JavaScript library, written specifically to take advantage of the Closure Compiler, based on a modular architecture. It provides cross-browser functions for DOM manipulations and events, Ajax and JSON, as well as more high-level objects such as User Interface widgets and Controls.
Closure Templates are a templating system for dynamically generating HTML in both Java and JavaScript.