Minificación
En informática, la minificación es el proceso de eliminar elementos innecesarios y reescribir el código para reducir el tamaño del archivo. Se realiza comúnmente en recursos de páginas web, como archivos HTML, CSS y JavaScript. Reducir el tamaño de los recursos web permite transferir los archivos más rápidamente, lo que hace que las páginas web se carguen más rápido.
Hay varias formas de minificar datos. La más básica consiste en eliminar comentarios, espacios innecesarios y saltos de línea caracteres de (nueva línea). Aunque los comentarios y los espacios en blanco ayudan a que el código sea más legible, el navegador los ignora. Por lo tanto, estos elementos se pueden eliminar de forma segura antes de la publicación. Otro método consiste en minimizar el código requerido para cada instrucción. En CSS, esto suele lograrse convirtiendo CSS en formato largo a CSS abreviado. Por ejemplo, una definición de margin podría ocupar siete líneas en formato largo, pero solo una línea en formato abreviado. En JavaScript, los nombres largos de variables se pueden reemplazar por nombres más cortos a menudo, un solo (carácter).
A continuación se muestra un ejemplo de código CSS antes y después de la minificación. Observe cómo se eliminan los comentarios, los espacios, los saltos de línea y los puntos y coma innecesarios. El código también se convierte de CSS en formato largo a CSS abreviado.
Código CSS estándar
img.left \/* float left 400px image *\/
{
float: left;
max-width: 400px;
margin-top: 8px;
margin-right: 30px;
margin-bottom: 12px;
margin-left: 0px;
}
Código CSS minificado
img.left{float:left;max-width:400px;margin:8px 30px 12px 0}
Los algoritmos de minificación avanzada pueden reducir aún más el tamaño de los archivos. Por ejemplo, un minificador de CSS puede encontrar y eliminar líneas duplicadas dentro de un archivo CSS. También puede combinar definiciones de CSS similares en una sola instrucción. Un minificador de JS incluso puede reescribir las funciones de JavaScript para que sean más eficientes.
La minificación del código a menudo solo ahorra unos pocos kilobytes. Por ejemplo, un archivo CSS estándar puede tener un tamaño de 50 KB y la versión minificada puede tener un tamaño de 40 KB. Sin embargo, al mejorar la velocidad de carga de una página, cada kilobyte cuenta. El objetivo de un buen minificador es reducir el tamaño del archivo tanto como sea posible sin afectar la forma en que el código se analiza o procesa. Independientemente del minificador que utilicen, los desarrolladores suelen conservar una versión no minificada del código para editarla en el futuro.
Minificación frente a compresión
Aunque la minificación y la compresión de archivos reducen el tamaño de los archivos, no son idénticas. La minificación simplemente modifica el texto, mientras que la compresión de archivos reescribe por completo el código binario dentro de un archivo. Un archivo comprimido debe descomprimirse mediante una utilidad de descompresión de archivos para poder leerse como archivo de texto. Muchos sitios web utilizan una combinación de minificación y compresión de archivos "gzip" para reducir al máximo el tamaño de los recursos web.
Pon a prueba tu conocimiento