Hola,
Cita:
|
Empezado por Román
Esto realmente es pregunta. Es que hasta para la página más pequeñita, tu clase xhtml carga todo (...)
|
Sobre eso diré que yo también me he preguntado algunas cosas y he estado a punto de comentarlo en los Foros, y, en fin, acaso ahora toca hacerlo.
En primer lugar no se me escapa que ciertas páginas, digamos, más o menos estáticas, podrían prescindir de la clase Xhtml, o, fuera como fuera, no necesitarían de métodos en esta clase, sino que, simplemente, cada página incluiría su código XHTML correspondiente (además del "general", que sí añadiría, por ejemplo, las cabeceras de las páginas, o el pie de estas). Puede hacerse, se ha pensado y no se descarta.
Peeeeeeeeeeeero... Lo cierto es que dudo que PHP carge los 130 KB del archivo de la clase Xhtml. Lo pongo en duda... ¡porque la carga de la página es bastante rápida, y, si tuviera que cargar los 130 de la clase Xhtml, los 30 de la clase BdatosEx, los 25 de la clase Login, los... tardaría mucho más de lo que tarda, fijo. Además nos hemos animado a echar para adelante (por lo menos hasta que no veamos que la cosa no escala, que no es posible seguir así) porque hemos visto clases en PHP de 300 KB...
Pero, sobre todo, porque los hechos contradicen a los números. Ya lo he dicho, si se "carga todo" la página tendría que ocupar unos 250 KB (no quiero exagerar) y, sin embargo, Loturak carga bastante rápido, desde luego, no cargaría así si tuviera que cargar con 250 KB... y lo dice alguien que cuenta con una conexión vía módem de 56 kbs y que notaría esos KB de qué manera...
¿Entonces? Pues no sé... no llego a tanto... es lo que quería preguntar, ¿cómo se las ingenia PHP? No lo sé, pero, desde luego, se las ingenia. No sé. Debe haber algo parecido al caché de los navegadores, o a lo que hace Apache (que no sirve páginas si no han cambiado desde la última vez), me parece, o MySQL, que no actualiza un registro (aunque se lo digas) si esto es innecesario, porque los datos del mismo son iguales... o al compilador JIT (Just in time) de .NET, que compila el código la primera vez que es necesario, pero, luego ya no hace sino ejecutar el código previamente compilado...
Mecanismos de optimización que van más allá de mi conocimiento, pero, que, deben existir, pues de lo contrario se vería enseguida, se notaría la diferencia y bastante además, ya digo.
Pensad en que la clase Xhtml no va sola... que se apoya en otra clases (de algún modo) y antes de su declaración puede verse:
Código PHP:
<?php
require(DIR_LIBS.'captcha.class.php');
require(DIR_LIBS.'filtros.class.php');
require(DIR_LIBS.'servidor.class.php');
require(DIR_LIBS.'etiquetas.class.php');
require(DIR_LIBS.'validarex.class.php');
require(DIR_LIBS.'compresion.class.php');
require(DIR_LIBS.'administrar.class.php');
class XHtml
{
/* ... */
Estas clases son mucho menos pesadas (del orden de 10 KB ó menos), pero, lo cierto es que ahí están... y, como digo, Loturak no carga "lenta" ni noto "en local" un excesivo consumo de recursos o algo parecido... ¡qué sé yo! Alguien tiene que explicarnos esto.
Edito: Me doy cuenta ahora de que acaso he mezclado churras con merinas en parte de lo que he dicho, pero, no voy a buscarle las vueltas, porque, me parece que se entiende lo que más o menos quiero explicar. Ea. ¡Saludos!
