stringtranslate.com

Herramientas de cierre de Google

Google Closure Tools [3] es un conjunto de herramientas para ayudar a los desarrolladores a crear aplicaciones web enriquecidas con JavaScript . Fue desarrollado por Google para su uso en sus aplicaciones web como Gmail , Google Docs y Google Maps . [4] En 2023, el proyecto tenía más de 230 000 líneas de código sin contar el compilador Mozilla Rhino integrado .

Compilador de cierre

Closure Compiler es una herramienta que permite que las descargas de JavaScript se ejecuten más rápido, a expensas de la legibilidad humana . No compila desde JavaScript a código de máquina , sino que compila desde JavaScript a un código JavaScript más eficiente.

El proceso ejecuta los siguientes pasos:

  1. Analiza el JavaScript enviado
  2. Analiza el JavaScript
  3. Elimina cualquier código muerto
  4. Reescribe y minimiza lo que queda.

También verifica la sintaxis , las referencias de variables y los tipos y advierte sobre errores comunes de JavaScript .

Permite transpilar código ECMAScript moderno a ECMAScript 5 para que los programadores puedan escribir JavaScript que utilice nuevas características de ECMAScript y ejecutarlo en navegadores u otros entornos que aún no las admiten. Esto hizo innecesario Traceur Compiler, otro proyecto que admitía la transpilación de ES6 a ES3. [5]

El compilador Closure también admite la verificación de tipos a través de anotaciones de tipos que deben escribirse en los comentarios de JSDoc . [6]

CLI

Google proporciona herramientas de línea de comandos que se utilizan para optimizar y compilar .jsarchivos:

Servicio de compilación de cierre

La aplicación Closure Compiler Service ofrece un formulario para que el usuario ingrese una URL que apunte a una fuente de JavaScript o ingrese el código fuente de JavaScript en un cuadro de texto. El sitio web se mostrará con el código JavaScript optimizado en el lado derecho para que el usuario lo copie. [7]

Hay una API disponible, accesible a través de solicitudes POST , los parámetros incluyen:

El servicio está marcado como obsoleto y eventualmente será eliminado. [8]

Ecosistema

Los lenguajes de programación que se transpilan a JavaScript se benefician de las herramientas de cierre. Por ejemplo, Closure Compiler ayuda a que ClojureScript sea práctico al hacer que el código JavaScript compilado sea más eficiente. [9]

Internos

Closure Compiler se basa en una versión modificada del motor Rhino JS creado por Mozilla, Google Guava , una biblioteca estándar de Java, Protocol Buffers , Gson y varias otras herramientas para realizar pruebas. También incluye anotaciones JSDoc de JavaScript integradas para varios proyectos populares, como la biblioteca API estándar de Node.js, JQuery y las API de Google Maps.

Biblioteca de cierre

Closure Library es una biblioteca de JavaScript escrita específicamente para aprovechar el compilador Closure, basada en una arquitectura modular . Proporciona funciones multiplataforma para manipulaciones y eventos DOM , Ajax y JSON , así como objetos de nivel superior como controles y widgets de interfaz de usuario .

Plantillas de cierre

Las plantillas de cierre son un sistema de plantillas para generar HTML dinámicamente tanto en Java [10] como en JavaScript . [11]

Dado que el lenguaje aparentemente se conoce como "Soy" internamente en Google, y "Soy" permanece en parte de la documentación y clases, [12] a veces las plantillas de cierre se denominan "plantillas Soy".

Hojas de estilo de cierre

Las hojas de estilo Closure Stylesheets proporcionan extensiones de CSS , que se traducen a CSS normal. En Google, esta versión extendida de CSS se conoce como GSS.

A partir de noviembre de 2021, las hojas de estilo Closure han quedado obsoletas en favor de herramientas como Sass y PostCSS . [13]

Véase también

Referencias

  1. ^ "Presentación de las herramientas de cierre: el blog oficial de Google Code". 5 de noviembre de 2009.
  2. ^ "v20230802: RemoveUnusedCode: registrar motivos para no eliminar variables". 2 de agosto de 2023. Consultado el 4 de agosto de 2023 .
  3. ^ Bolin, Michael, "Cierre: la guía definitiva", O'Reilly Media Inc., Sebastopol, CA, 2010
  4. ^ "Preguntas frecuentes: herramientas de cierre". Desarrolladores de Google .
  5. ^ "Traceur es un compilador de JavaScript similar al JavaScript actual". GitHub .
  6. ^ "Anotación de JavaScript para el compilador de cierre". GitHub .
  7. ^ "Servicio de compilador de cierre".
  8. ^ "Referencia de API del servicio de compilación de cierre" . Consultado el 18 de julio de 2023 .
  9. ^ "Motivaciones para utilizar las herramientas de cierre de Google". GitHub .
  10. ^ "Hola mundo usando Java". github.com .
  11. ^ "Hola mundo usando JavaScript". github.com .
  12. ^ "Archivo de código de Google: almacenamiento a largo plazo para alojamiento de proyectos de código de Google". code.google.com .
  13. ^ Weizenbaum, Natalie (1 de noviembre de 2021). «Marcar oficialmente este repositorio como finalizado» . Consultado el 18 de julio de 2023 .

Enlaces externos