Código Javascript:
Ver original
<script type="text/javascript" src="miscript.php"></script>
Esto me prende el bombillo a pensar que puedo hacer cosas como esta
contenido: miscript.php
Código PHP:
Ver original
<?php include("script1.js"); include("script2.js"); include("script3.js"); include("script4.js"); ?>
Lo que igualmente me permite tener organizada mi aplicación.
Ahora mi pregunta es: ¿Existen diferencias en los tiempos de ejecución? ¿El uso de requirejs, es mucho mas óptimo o la diferencia es irrisoria?
Cuando uso la sintaxis común:
Código Javascript:
Ver original
<script type="text/javascript" src="miscript.js"></script>
Esto descarga un fichero a pc del cliente y se aloja en temporal, mientras la sesión este abierta la próxima vez que cargue no ser necesario cargar el fichero puesto ya se encuentra en la pc. «así lo entiendo»
Optimizo si hago este proceso asíncrono:
Código Javascript:
Ver original
<script type="text/javascript" src="miscript.js" async></script>
Se que como PHP se ejecuta del lado del servidor cuando se llega a la linea mostrada a continuación, ya miscript.php se ha ejecutado y esta preparándose PHP para ir a dormir. Ahora teniendo en cuenta la forma de trabajar de requirejs, teniendo algo como esto:
Código Javascript:
Ver original
<script type="text/javascript" src="requirejs.js" data-main="principal.js"></script>
contenido: principal.js
Código Javascript:
Ver original
require(["script1","script2","script3","script4"], function(s1,s2,s3,s4) { .... } ?>
lo anterior provocara la descarga de los ficheros script1.js ,script2.js ,script3.js ,script4.js individualizados en el temporal de mi PC, en cambio la llamada a mi fichero miscript.php básicamente se concateno un script sobre el otro hasta formar un solo archivo con la suma de los pesos de cada archivo aproximadamente. Esto ultimo provocaría que si se necesitase en la carga de otra pagina de mi web el uso de 2 de las librerias .js mencionadas. Osea planteando esta situación:
Código Javascript:
Ver original
<script type="text/javascript" src="requirejs.js" data-main="secundario.js"></script>
contenido: secundario.js
Código Javascript:
Ver original
require(["script3","script4"], function(s3,s4) { .... } ?>
Esto expuesto provoque la no descarga de los ficheros script3.js y script4.js puesto que ya existen en los temporales de mi PC. Sin embargo en caso de usar un secundario.php obtendría la descarga con la concatenación de estos dos ficheros.
Me gusta la idea de usar la opción PHP, por eso quiero saber que tantas implicaciones tiene su uso. ¿Vale la pena?