Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/05/2003, 13:46
josemi
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Capas de abstraccion: sirven para que te concentres en el QUE HACER, no en el COMO SE HACE. En concreto, con las BD lo que se suele hacer es tener una libreria de funciones (o una clase) que realizan la operaciones basicas de una BD: conectarse, ejecutar consulta, recorrer un recordset, ... . La mayoria de las veces son las mismas funciones que tiene PHP para las BD que soporta. Entonces te preguntaras ¿para que repetir el trabajo? Pues si tienes una libreria (o clase) de estas, puedes usar cualquier base de datos (mysql, postgres, etc) sin cambiar tu codigo, solo cambiando la libreria. Tu codigo tendra llamadas a conectar_bd(), pero la implementacion de esa funcion sera llamar a mysql_connect() si has elegido la libreria para MySQL, pero llamara a pg_connect() si has elegido postgres. Asi te concentras en el que tu codigo defina el QUE hacer (conectar a la base de datos) y dejas a la libreria el trabajo de COMO HACERLO (llamando a la funcion que corresponda).

Templates o plantillas: es otra capa de abstraccion. Al definir la plantilla, defines QUE se va a mostrar en esa pagina, pasando del COMO calcular esos valores. Asi puedes definir en una plantilla que en la etiqueta <title> muestre el valor de la variable $titulo, pero el calculo de la variable $titulo lo hace otra parte del codigo ajeno a la plantilla (quizas es el valor de un parametro GET, quizas depende del idioma que ha seleccionado el usuario). Luego si dedices modificar la plantilla para que titulo tambien se muestre en otra parte de la pagina, no hay ningun problema.

Espero haber sido de ayuda.
__________________
Josemi

Aprendiz de mucho, maestro de poco.