lunes, 29 de diciembre de 2014

Ficheros DAO, delegación de métodos de acceso a persistencia

Hola de nuevo:

Ya conoceréis los ficheros DAO como método de acceso delegado a persistencia. En este blog he desarrollado algunos ejemplos.

Normalmente hemos de ubicar los ficheros DAO en la carpeta "models" de nuestras fuentes. Tampoco sería muy incorrecto que se sitúen en la carpeta "controllers", ya que estos ficheros en realidad son un intermediario entre la capa de negocio y la capa de persistencia.

Lo normal es que en nuestros ficheros DAO coloquemos exclusivamente los métodos de acceso a la información que se halla situada en nuestra capa de datos. Y eso nos lleva a plantear la conveniencia de construir uno o varios interfaces que sea implementado por nuestros ficheros DAO.

Supongamos el siguiente interface:

public interface UsuariosInterface {

    public boolean createUser(Usuarios user);
    public Usuarios readUser(long idUser);
    public boolean updateUser(long idUser, Usuarios user);
    public boolean deleteUser(long idUser);
    public Usuarios identifyUser(String login, String password);

}

Este interface nos va a dar el "molde" necesario para la preparación de métodos de acceso a una base de datos, al objeto de hacer operaciones CRUD (crear, leer, modificar y borrar) en la capa de datos.

El interface se va a asegurar que tendremos que implementar, al menos, los métodos en él definidos. Y eso hará que nuestro código, si alguna vez es modificado, sustituido o reemplazado, tendrá que obligatoriamente contener estos métodos en su código.



Este "corsé", aparentemente incómodo, es sin embargo muy útil. Debido que el desarrollo de nuestra aplicación está apoyada en una serie de métodos, es razonable pensar que si esos métodos desaparecen o son modificados, nuestro código puede verse seriamente afectado.

Si implementamos un interface en cada fichero DAO, nos aseguramos que, ante un cambio de capa de datos que obligue a modificar la capa de persistencia, la aplicación no se verá afectada en el resto de capas. Si apoyamos las operaciones de la capa de negocios en los métodos desarrollados en un fichero DAO debido a la implementación de un interface, conseguiremos que nuestra aplicación sea más robusta y más fácil de modificar.

Anterior tema                                                                                         Siguiente tema

No hay comentarios:

Publicar un comentario