Diferencia entre revisiones de «Desajuste por impedancia»
| (No se muestran 2 ediciones intermedias de otro usuario) | |||
| Línea 1: | Línea 1: | ||
| − | |||
{{Definición | {{Definición | ||
|nombre=Desajuste por impedancia | |nombre=Desajuste por impedancia | ||
| − | |imagen= | + | |imagen= |
|concepto=Fenómeno o problemática que surge a partir de la incompatibilidad de datos objeto-relacional. | |concepto=Fenómeno o problemática que surge a partir de la incompatibilidad de datos objeto-relacional. | ||
}} | }} | ||
<div align=justify> | <div align=justify> | ||
| − | '''Desajuste por impedancia''' o como es más conocido a nivel mundial '''Impedance Mismatch''', consiste en el problema o falta de concordancia objeto-relacional, esto consiste en un grupo de dificultades y problemas técnico-conceptuales a los que s enfrentan los diseñadores de bases de datos y los programadores. Estos problemas son generalmente la incompatibilidad de tipos de datos entre los tipos de datos de las bases de datos y los tipos de datos del lenguaje de programación que se utilice en determinado momento. | + | '''Desajuste por impedancia''' o como es más conocido a nivel mundial '''Impedance Mismatch''', consiste en el problema o falta de concordancia objeto-relacional, esto consiste en un grupo de dificultades y problemas técnico-conceptuales a los que s enfrentan los diseñadores de bases de datos y los programadores. Estos problemas son generalmente la incompatibilidad de tipos de datos entre los tipos de datos de las bases de datos y los tipos de datos del [[lenguaje de programación]] que se utilice en determinado momento. |
==Ejemplo== | ==Ejemplo== | ||
| − | A continuación se muestra un ejemplo de base de datos en postgres y una aplicación programada en Delphi en el que se muestran los tipos de datos de postgres y el equivalente en Delphi. | + | A continuación se muestra un ejemplo de [[base de datos]] en [[postgres]] y una aplicación programada en [[Delphi]] en el que se muestran los tipos de datos de postgres y el equivalente en Delphi. |
*serial = integer | *serial = integer | ||
| Línea 20: | Línea 19: | ||
*Objetos de Acceso a Datos (DAOs): En vez de que los objetos se instancien y ejecuten en la Capa de Negocio, se coloca una Capa de Acceso a Datos desde donde se implementarán los CRUD. | *Objetos de Acceso a Datos (DAOs): En vez de que los objetos se instancien y ejecuten en la Capa de Negocio, se coloca una Capa de Acceso a Datos desde donde se implementarán los CRUD. | ||
| − | *Marcos de Trabajo de Persistencia (Persistence Frameworks): Crear primero el modelo de entidades de negocio en el esquema de tablas, y luego se crean objetos-entidades como copias exactas de las mismas. Las clases activas son las que modelan procesos de negocio. Las pasivas, las que modelan entidades de negocio. | + | *Marcos de Trabajo de Persistencia (Persistence Frameworks): Crear primero el modelo de entidades de negocio en el esquema de [[tablas]], y luego se crean objetos-entidades como copias exactas de las mismas. Las clases activas son las que modelan procesos de [[negocio]]. Las pasivas, las que modelan entidades de negocio. |
*Mapeadores Objeto/Relacionales (O/R-M): Mediante mecanismos, ya sea un archivo XML, atributos en el código de las clases y propiedades, o de alguna otra forma, se mapean clases en tablas, propiedades en columnas, asociaciones en relaciones, etc. | *Mapeadores Objeto/Relacionales (O/R-M): Mediante mecanismos, ya sea un archivo XML, atributos en el código de las clases y propiedades, o de alguna otra forma, se mapean clases en tablas, propiedades en columnas, asociaciones en relaciones, etc. | ||
última versión al 13:29 1 abr 2013
| ||||
Desajuste por impedancia o como es más conocido a nivel mundial Impedance Mismatch, consiste en el problema o falta de concordancia objeto-relacional, esto consiste en un grupo de dificultades y problemas técnico-conceptuales a los que s enfrentan los diseñadores de bases de datos y los programadores. Estos problemas son generalmente la incompatibilidad de tipos de datos entre los tipos de datos de las bases de datos y los tipos de datos del lenguaje de programación que se utilice en determinado momento.
Ejemplo
A continuación se muestra un ejemplo de base de datos en postgres y una aplicación programada en Delphi en el que se muestran los tipos de datos de postgres y el equivalente en Delphi.
- serial = integer
- varchar = String
- true/false = boolean
Soluciones
Actualmente se han implementado tres soluciones que han en gran medida resuelto el problema del Desajuste por impedancia en el momento en que han aparecido, las soluciones son:
- Objetos de Acceso a Datos (DAOs): En vez de que los objetos se instancien y ejecuten en la Capa de Negocio, se coloca una Capa de Acceso a Datos desde donde se implementarán los CRUD.
- Marcos de Trabajo de Persistencia (Persistence Frameworks): Crear primero el modelo de entidades de negocio en el esquema de tablas, y luego se crean objetos-entidades como copias exactas de las mismas. Las clases activas son las que modelan procesos de negocio. Las pasivas, las que modelan entidades de negocio.
- Mapeadores Objeto/Relacionales (O/R-M): Mediante mecanismos, ya sea un archivo XML, atributos en el código de las clases y propiedades, o de alguna otra forma, se mapean clases en tablas, propiedades en columnas, asociaciones en relaciones, etc.