Ver Mensaje Individual
  #7 (permalink)  
Antiguo 05/03/2006, 01:10
HerSAn
 
Fecha de Ingreso: mayo-2005
Mensajes: 201
Antigüedad: 19 años
Puntos: 2
Cita:
interfaz : es una colección de operaciones que se usa para especificar el servicio que debe de proporcionar una clase o un componente
es decir que una inferfaz (interfase) define una línea de separación entre lo que una abstracción hace y la implementación de como lo hace
Es probable que el termino no lo veas claro en este momento, pero supongamos que tu tienes una aplicación sencilla que almacena sus datos en una sola tabla supongamos que en MySQL como es tu caso, bien terminas tu aplicación y todo esta trabajando bien usando la API que proporciona php como en tu ejemplo:
Código PHP:
$link mysql_connect("myServer","usr","pass") or die ("mensaje de error, etc");
mysql_select_db("base",$link) or die ("mensaje de error, etc");
$consulta mysql_query("select columna from tabla"$link);
while(
$rs=mysql_fetch_row($consulta) {
    echo 
$rs[0] . "<br>";
}
mysql_free_result($consulta);
mysql_close($link); 
Ahora supongamos que te topas con la necesidad de usar algunas ventajas de MySQL 4.1+ y esto implica que ahora tienes que rescribir tu ejemplo para usar la extensión mejorada con lo que tiene que cambiar varias líneas para obtener el mismo resultado, y después de eso resulta que alguien te pide que hagas lo mismo con tu aplicación pero que los datos se guarden en MS SQLServer y otro mas que no le gusta mysql por que ya tiene Oracle8i o Oracle9i con lo que tienes que hacer nuevos cambios que implican nombre diferente de funciones y además de lo necesario para que tu aplicación cargue la API correspondiente a usar, etc.
Y es aquí donde te das cuenta de que requieres algo mas, para solventar tu problema y de tanto hacer lo mismo se comienza hacer intuitivo el echo de que sin importar el medio que uses al final casi siempre son las mismas operaciones las que realizas es decir
  • conectar al RDBMS
  • Realizar consulta
  • liberara memoria
  • cerrar conexión
lo que cambia es como haces esas operaciones en cada caso, Y es donde el termino de Interfaz se vuelve útil y junto con ello la POO. Ya que como una interfaz define como se deben de declara las operaciones obliga a cada clase a cumplir con la implementación de sus métodos y con eso creas un punto común para acceder cualquier RDBMS y el poder real esta en que si el día de mañana necesitas conectarte a otra cosa tu interfaz no cambia ( en un caso ideal) solo cambia la implementación de la misma y con eso tus aplicaciones solo necesitan tratar con la intefaz y no con sus implementaciones dejando sin cambio las mismas.
La potencia de POO no esta en crear contenedores de funciones que puedes mover como un todo, si no en comprender sus conceptos y aplicarlos en este caso con el concepto de interfaz que aprovecha la idea de la herencia para su implementación.
__________________
Saludos!
Mty-NL..