TEDnología, Noticias sobre tecnologia, Tips web, Gadgets, Redes Sociales

Lazy Loading en PHP

| 6 Comments

Lazy Loading es un patrón de diseño que se utiliza mucho programación

En que consiste?

Su implementación en PHP consiste en no incluir las clases a utilizar en nuestro proyecto.

Como las reconoce?

De esto se trata Lazy Loading, cuando necesitas de una clase es recien cuando la llama. Este proceso lo realizamos con la función mágica que trae PHP5 __autoload($nombreClase), en un POST anterior escribí un completo ejemplo para su uso.

Que de bueno tiene este patrón?

Al no incluir todas las clases el inicio de cada pagina php, estamos ahorrando un proceso, ganando un poco de performance y obteniendo un código mas limpio en nuestra aplicación.

Ejemplo de Código

primero cambiaremos nuestras Clases con el mismo nombre del archivo(como en Java).
Si tenemos una Clase Clientes(), nuestro archivo podría llamarse Clientes.php, Clientes.class.php, ClientesClass.php, lo importante es que el nombre de la clase aparezca completo en el archivo.

function __autoload($class_name)
{
	//direfentes rutas separas por ","
    $include_path = '/lib,/include,/class';
    $include_path_tokens = explode(',', $include_path);

    foreach($include_path_tokens as $prefix)
    {
      $path[0] = $prefix . '/' . $class_name . '.php';
      $path[1]= $prefix . '/' . $class_name . '.class.php';

      foreach($path as $thisPath)
      {
        if(file_exists($thisPath))
        {
          require_once $thisPath;
          return;
        }
      }
    }
}

Con esto nos olvidaremos de muchos includes que bajan la performance en nuestras aplicaciones.

Recursos

También te puede interesar

Comentarios