Articulo de referencia

Patrón de mapeo de datos

En ingeniería de software , el patrón de mapeo de datos es un patrón arquitectónico . Fue nombrado por Martin Fowler en su libro de 2003, Patterns of Enterprise Application Arch...

En ingeniería de software , el patrón de mapeo de datos es un patrón arquitectónico . Fue nombrado por Martin Fowler en su libro de 2003, Patterns of Enterprise Application Architecture . [ 1 ] La interfaz de un objeto que se ajusta a este patrón incluiría funciones como Crear, Leer, Actualizar y Eliminar, que operan sobre objetos que representan tipos de entidades de dominio en un almacén de datos.

Un mapeador de datos es una capa de acceso a datos que realiza la transferencia bidireccional de datos entre un almacén de datos persistente (a menudo una base de datos relacional ) y una representación de datos en memoria (la capa de dominio). El objetivo del patrón es mantener la representación en memoria y el almacén de datos persistente independientes entre sí y del propio mapeador de datos. Esto es útil cuando se necesita modelar y aplicar procesos de negocio estrictos a los datos en la capa de dominio que no se asignan directamente al almacén de datos persistente. [ 2 ] La capa se compone de uno o más mapeadores (u objetos de acceso a datos ), que realizan la transferencia de datos. Las implementaciones de mapeadores varían en alcance. Los mapeadores genéricos manejarán muchos tipos diferentes de entidades de dominio; los mapeadores dedicados manejarán uno o pocos.

Implementaciones

Es posible encontrar implementaciones de este concepto en diversos marcos de trabajo para numerosos entornos de programación.

Java/.NET

Node.js / TypeScript

  • Biblioteca Bookshelf.js
  • Biblioteca TypeORM
  • Biblioteca Massive.js
  • Prisma
  • Biblioteca Objection.js
  • Biblioteca MikroORM
  • Mapeador de grafos de objetos (OGM) de LDkit para fuentes de datos RDF

PHP

  • Atlas ORM (mapeador de datos, puerta de enlace de datos de tabla, constructor de consultas y envoltorio PDO) [ 3 ]
  • Doctrine2 Object Relational Mapper (ORM) y la capa de abstracción de la base de datos [ 4 ]
  • Cycle ORM (PHP DataMapper ORM y motor de modelado de datos) [ 5 ]
  • ORM CakePHP (ORM DataMapper de PHP, constructor de consultas y envoltorio PDO)

Perl

Pitón

Rubí

  • Biblioteca DataMapper (en realidad, esta biblioteca implementaba el patrón de diseño Active Record; su sucesora, DataMapper 2 (ahora ROM ), tenía como objetivo implementar realmente el patrón de diseño que le da nombre).

Elixir

  • Marco de persistencia ecto

Véase también

Referencias

  1. Fowler, Martin (2003). Patrones de arquitectura de aplicaciones empresariales . Addison-Wesley. ISBN 978-0-321-12742-6.
  2. "¿Cuál es la diferencia entre Active Record y Data Mapper?" .
  3. "Atlas ORM Atlas" . 
  4. "Doctrine2 y ActiveRecord Doctrine2" . Doctrine2 . Archivado del original el 21/07/2013 . Consultado el 02/04/2013 . 
  5. "Cycle ORM Cycle" . GitHub . 
  6. "desbordamiento de pila DBIx" .