12.07.2015 Views

Mapeo Objeto Relacional - Repositorio UTN

Mapeo Objeto Relacional - Repositorio UTN

Mapeo Objeto Relacional - Repositorio UTN

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ORM (<strong>Mapeo</strong> <strong>Objeto</strong> –<strong>Relacional</strong>)MantenibilidadOtro de los beneficios es la mantenibilidad. Al haber menos de líneas de código, nuestraaplicación es más fácil de entender y mantener dado que se da énfasis a la lógica denegocio, tal y como he dicho en el párrafo anterior. No obstante, puede ser discutible queel número de líneas de código sea la mejor medida para la mantenibilidad.Hay otros argumentos en defensa de la mantenibilidad. En las aplicaciones donde lapersistencia se implementa “a mano” mediante un driver JDBC y código SQL, los dosmundos (el relacional y el de los objetos) no se llevan muy bien, y si se produce algúncambio en el diseño de uno de ellos, casi con toda seguridad esto implicará algún cambioen el otro. Además, los diseños de ambos están pensados para evitar conflictos entreellos (generalmente, el diseño de las clases está hecho para evitar conflictos con el diseñoEntidad/Relación) cualquier herramienta ORM (Hibernate, TopLink) establece, por asídecirlo, un “buffer” entre ambos diseños para permitir una mayor flexibilidad.RendimientoContinuando con los beneficios, otro posible beneficio es el rendimiento. Esto puederesultar paradójico, ya que se suele argumentar que con la persistencia “manual” seobtiene un rendimiento mayor que con herramientas ORM. A priori, esto es cierto (al igualque lo es que un programa escrito en ensamblador es más rápido que uno escrito enJava, C# o cualquier otro lenguaje de alto nivel) lo que ocurre es que hay que tener encuenta las restricciones de tiempo que existen en el desarrollo de aplicaciones en elmundo real, es decir, la persistencia manual proporciona un rendimiento mayor que unaherramienta ORM cuando se dedica a escribir dicha capa de persistencia al mismo tiempoque el resto de la aplicación.Para terminar con lo referente al rendimiento, resulta lógico a priori pensar que quieneshan desarrollado una herramienta ORM han dedicado más tiempo que cualquiera denosotros a la búsqueda de optimizaciones. Un ejemplo es que al realizar una actualizaciónen una tabla, si sólo actualizamos las columnas que se quieren actualizar y no todas, elresultado que se obtiene es que en algunos motores de bases de datos se consigue unincremento del rendimiento, mientras que en otros sistemas de Bases de Datos<strong>Relacional</strong>es se degrada el rendimiento. Otro ejemplo es que instanciar poolings deTatiana Alexandra Freire Reyes 33

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!