Utilizar el javascript de otro archivo
rollup.js toma archivos JS modulares, los combina y los escupe en uno o más formatos. Para los sitios web, creo simples IIFEs. Para los plugins y el trabajo de código abierto, puedo utilizarlo para dar salida a mi código en patrones de módulos reveladores, JS común, y más.
Históricamente, bajo HTTP/1, los navegadores descargaban como máximo dos archivos de un solo dominio a la vez. Tener muchos archivos pequeños creaba cuellos de botella en la descarga que podían ralentizar la renderización de tu sitio. Combinar los archivos en uno grande era una forma de evitarlo.
Como señala Rachel Andrew en su artículo para Smashing Magazine, combinar todas las secuencias de comandos en un solo archivo significa que si se actualiza uno de esos archivos, el usuario tiene que volver a descargar todo, incluso lo que no ha cambiado. Ella menciona aquí el CSS, pero esto se aplica también al JS.
Un problema adicional con la concatenación es que todo tendrá que ser purgado de la caché a la vez. No se puede dar a algunos archivos que nunca cambian una fecha de caducidad larga mientras se da a las partes del código base que cambian a menudo una fecha más corta. Todo tiene que ser expirado si incluso una línea de CSS, usada en una sola página, es cambiada.
Js requiere archivo
Las aplicaciones web contemporáneas tienden a utilizar la técnica #3. Requerir los scripts necesarios cuando se carga la página en lugar de usar etiquetas <script> incrustadas le da el mejor equilibrio de reutilización de código y tiempo de carga. Los archivos se cargan de forma asíncrona, lo que no retiene el evento DOMContentLoaded. Esto significa que las páginas web se vuelven reactivas a la entrada del usuario más rápidamente. <script> En principio funciona igual para un archivo HTML que para muchos de ellos.
El proceso se llama bundling. Hay varias maneras de lograr esto, desde, por ejemplo, Browserify a Webpack – nombrando sólo dos. La gente utiliza estas herramientas para ayudar a realizar la tarea de bundling por ellos. bundling
Combinar varios archivos js en uno solo
Normalmente, los sitios de varias páginas tienen un código de librería y de framework común. Este código se utiliza en suficientes páginas y en suficientes casos de uso que merece la pena entregar ese código en la carga inicial de la página. Como hay diferencias en lo que necesita cada página, tienes varias opciones para gestionar ese código.
Las aplicaciones web contemporáneas tienden a utilizar la técnica #3. Requerir los scripts necesarios cuando se carga la página en lugar de usar etiquetas <script> incrustadas le da el mejor equilibrio de reutilización de código y tiempo de carga. Los archivos se cargan de forma asíncrona, lo que no retiene el evento DOMContentLoaded. Esto significa que las páginas web se vuelven reactivas a la entrada del usuario más rápidamente.
Muchas personas toman el transporte público y utilizan sus dispositivos móviles para navegar por la web. Estos vehículos son de metal y transportan a mucha gente a gran velocidad. Desconectarse de una torre de telefonía y conectarse a la siguiente no es tan malo para una sola persona. Pero cuando 1.000 personas en un tren expreso que va a 100 km/h hacen este retraso en la red se vuelve horrible.
Combinar js
rollup.js toma archivos JS modulares, los combina y los escupe en uno o más formatos. Para los sitios web, creo simples IIFEs. Para los plugins y el trabajo de código abierto, puedo utilizarlo para dar salida a mi código en patrones de módulos reveladores, JS común, y más.
Históricamente, bajo HTTP/1, los navegadores descargaban como máximo dos archivos de un solo dominio a la vez. Tener muchos archivos pequeños creaba cuellos de botella en la descarga que podían ralentizar la renderización de tu sitio. Combinar los archivos en uno grande era una forma de evitarlo.
Como señala Rachel Andrew en su artículo para Smashing Magazine, combinar todas las secuencias de comandos en un solo archivo significa que si se actualiza uno de esos archivos, el usuario tiene que volver a descargar todo, incluso lo que no ha cambiado. Ella menciona aquí el CSS, pero esto se aplica también al JS.
Un problema adicional con la concatenación es que todo tendrá que ser purgado de la caché a la vez. No se puede dar a algunos archivos que nunca cambian una fecha de caducidad larga mientras se da a las partes del código base que cambian a menudo una fecha más corta. Todo tiene que ser expirado si incluso una línea de CSS, usada en una sola página, es cambiada.