¿qué es un orm?
jpox
Este artículo necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas de fuentes fiables. El material sin fuente puede ser cuestionado y eliminado.Buscar fuentes: “Object-relational mapping” – noticias – periódicos – libros – scholar – JSTOR (mayo de 2009) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)
El mapeo objeto-relacional (ORM, O/RM, y herramienta de mapeo O/R) en informática es una técnica de programación para convertir datos entre sistemas de tipos incompatibles utilizando lenguajes de programación orientados a objetos. Esto crea, en efecto, una “base de datos de objetos virtual” que puede utilizarse desde el lenguaje de programación. Existen paquetes gratuitos y comerciales que realizan el mapeo objeto-relacional, aunque algunos programadores optan por construir sus propias herramientas ORM.
En la programación orientada a objetos, las tareas de gestión de datos actúan sobre objetos que casi siempre son valores no escalares. Por ejemplo, considere una entrada de la libreta de direcciones que representa a una sola persona junto con cero o más números de teléfono y cero o más direcciones. Esto podría ser modelado en una implementación orientada a objetos por un “objeto Persona” con un atributo/campo para mantener cada elemento de datos que la entrada comprende: el nombre de la persona, una lista de números de teléfono y una lista de direcciones. La lista de números de teléfono contendría a su vez “objetos PhoneNumber” y así sucesivamente. El lenguaje de programación trata cada una de estas entradas de la agenda como un único objeto (por ejemplo, puede referenciarse mediante una única variable que contenga un puntero al objeto). Se pueden asociar varios métodos al objeto, como los que devuelven el número de teléfono preferido, la dirección del domicilio, etc.
eclipselink
Estoy leyendo un libro y dice: “si creas tu propia capa de acceso a los datos utilizando ADO.NET para acceder a tu base de datos, te afectará mínimamente si el esquema de datos existe o no. Sin embargo, si utilizas un O/RM, tu flexibilidad estará limitada por la herramienta que utilices”.
Entity Framework y NHibernate son ORMs. Significa que no operas con conexiones SQL, comandos, parámetros – el ORM lo hace por ti y permite mapear la estructura de tu base de datos de manera OOP: puedes añadir, leer, actualizar, borrar registros en tu DB usando objetos en C#. Sólo tiene que asignar su objeto a la base de datos correctamente. Entity Framework está construido sobre ADO.NET y utiliza ADO.NET en su interior. Las sentencias SQL son generadas por el ORM. ORM
Generalmente, el acceso a la DB sin ORM es más rápido, pero debe proporcionar más líneas de código. Si quieres operar tu base de datos de manera OOP y escribir un código más legible debes elegir ORM. Depende de sus propósitos sobre lo que debe elegir.
Hay Micro ORMs (Dapper, BLToolkit) que te permiten escribir consultas SQL y mapear parámetros a propiedades de objetos. Los Micro ORMs, en general, tienen mejor rendimiento que los Full ORMs, pero ADO.NET sigue siendo más rápido.
toplink
Este artículo necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas de fuentes fiables. El material sin fuente puede ser cuestionado y eliminado.Buscar fuentes: “Object-relational mapping” – noticias – periódicos – libros – scholar – JSTOR (mayo de 2009) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)
El mapeo objeto-relacional (ORM, O/RM y herramienta de mapeo O/R) en informática es una técnica de programación para convertir datos entre sistemas de tipos incompatibles utilizando lenguajes de programación orientados a objetos. Esto crea, en efecto, una “base de datos de objetos virtual” que puede utilizarse desde el lenguaje de programación. Existen paquetes gratuitos y comerciales que realizan el mapeo objeto-relacional, aunque algunos programadores optan por construir sus propias herramientas ORM.
En la programación orientada a objetos, las tareas de gestión de datos actúan sobre objetos que casi siempre son valores no escalares. Por ejemplo, considere una entrada de la libreta de direcciones que representa a una sola persona junto con cero o más números de teléfono y cero o más direcciones. Esto podría ser modelado en una implementación orientada a objetos por un “objeto Persona” con un atributo/campo para mantener cada elemento de datos que la entrada comprende: el nombre de la persona, una lista de números de teléfono y una lista de direcciones. La lista de números de teléfono contendría a su vez “objetos PhoneNumber” y así sucesivamente. El lenguaje de programación trata cada una de estas entradas de la agenda como un único objeto (por ejemplo, puede referenciarse mediante una única variable que contenga un puntero al objeto). Se pueden asociar varios métodos al objeto, como los que devuelven el número de teléfono preferido, la dirección del domicilio, etc.
django orm
El mapeo objeto-relacional (ORM) es una técnica que permite consultar y manipular datos de una base de datos utilizando un paradigma orientado a objetos. Cuando se habla de ORM, la mayoría de la gente se refiere a una biblioteca que implementa la técnica de mapeo objeto-relacional, de ahí la frase “un ORM”.
Una biblioteca ORM es una biblioteca completamente ordinaria escrita en el lenguaje de tu elección que encapsula el código necesario para manipular los datos, de modo que ya no utilizas SQL; interactúas directamente con un objeto en el mismo lenguaje que estás utilizando.
Como todos los acrónimos, es ambiguo, pero supongo que quieren decir mapeador objeto-relacional, una forma de taparse los ojos y hacer creer que no hay SQL debajo, sino que todo son objetos;-). No es realmente cierto, por supuesto, y no está exento de problemas — el siempre colorido Jeff Atwood ha descrito ORM como el Vietnam de CS;-). Pero, si sabes poco o nada de SQL, y tienes un problema bastante simple / a pequeña escala, pueden ahorrarte tiempo;-)