¿Cuándo uso ORM?

Cuando está creando el esquema desde cero para un propósito específico, es factible usar un orm. Esto le permite crear las tablas y las relaciones de una manera agradable y sencilla para la aplicación. Lo más importante es que le permite administrar los flujos de datos y la lógica en los objetos orm. Esto es valioso porque no tiene que cambiar constantemente los idiomas y los sistemas, crear y rellenar es, la verificación de errores, la desnormalización para el rendimiento es posible sin tener que coordinarse con otros que podrían estar interactuando con el mismo almacén de datos en un nivel inferior .

Por lo tanto, menos lenguajes y un conocimiento profundo de los sistemas involucrados, reglas más complejas que se hacen cumplir más fácilmente, menos comunicación y sincronización del esquema entre diferentes programas que interactúan, ya que usan la misma biblioteca de ormas y definiciones.

Orm es difícil de insertar en un sistema y esquema que ya existe y funciona, pero tiene ventajas para el desarrollo de un nuevo sistema.

no,
Muchas aplicaciones grandes de ERP utilizan procedimientos almacenados para administrar lógicas, esto se debe a que trabajan en grandes cantidades de datos.

si su base de datos fuera pequeña o la cantidad de datos manejados por la aplicación a la vez en una sola sesión o por usuario fuera menor, vaya por ella, de lo contrario, vaya con los procedimientos almacenados.

para desarrollar informes, vaya siempre a los procedimientos almacenados.

por lo tanto, depende de sus requisitos y de qué tan bien analice los requisitos de datos de la aplicación

orm simplemente asigna objetos de la base de datos a la clase .net usando metadatos de clase (atributos), en tiempo de ejecución las operaciones realizadas durante la recopilación se traducen en consultas sql por orm y se envían a través de db, por lo tanto, no hay control sobre el sql generado la mayoría de las veces, por lo que no habrá forma de optimizar las consultas SQL si las combinaciones son complejas

ORM es muy útil en su aplicación compleja.
Hay muchos criterios para seleccionar ORM, si el alcance de la aplicación es pequeño a mediano mejor para usar ORM en el cuidado de aplicaciones más grandes o grandes, no es preferible.

ORM no es más que una capa adicional en su aplicación para encargarse de todas sus operaciones relacionadas con la base de datos.

Es mejor ir con el Procedimiento de Tienda para obtener un resultado óptimo en su aplicación.

He visto que los desarrolladores en general tienen muchas opiniones fuertes sobre ORM . Cuando ves tantas opiniones apasionadas y conflictivas en tantos lugares diferentes, es una señal bastante clara de que estás viendo un argumento religioso en lugar de un debate racional. Y, como en cualquier buen argumento religioso, vi o emacs, este también tiene dos lados.

Comencé mi carrera construyendo una aplicación web empresarial a gran escala que se creó en Rails, un marco de aplicación web desarrollado en Ruby que admite ORM utilizando el patrón arquitectónico Active Record. Desde entonces, tuve la oportunidad de trabajar en proyectos que también trataban datos sin ORM . Y sentí que probablemente debería compartir mi comprensión, o más bien mis puntos de vista sobre todo el debate ORM no ORM .

El debate de ORM no se trata de tecnología; Se trata de valores. La gente le dice que debe o no usar ORM en función de lo que ellos piensan que es más importante: acceso limpio a datos o código limpio.

Usted pregunta: ¿ Cuándo uso [un] ORM?

En mi humilde opinión, un ORM es útil cuando tiene un modelo de objeto ya existente, bien pensado y con todas las funciones y desea conservarlo en un RDBMS, por lo que el modelo “oficial” es el modelo de objeto.

Según mi experiencia, lo opuesto (es decir, si tiene un modelo relacional existente y desea construir y sacar un modelo del mismo) rara vez es una gran idea, especialmente desde el punto de vista del mantenimiento: el modelo del objeto termina siendo un ciudadano de segunda clase. siempre jugando con el modelo relacional, y con los desarrolladores constantemente tentados a eludir el modelo de objetos y consultar el modelo relacional a través de SQL, porque SQL es un lenguaje estándar (principalmente) diseñado para hacer eso y escribir consultas SQL complejas ad-hoc ( especialmente consultas analíticas) a menudo es mucho más fácil y rápido que usar correctamente cualquier medio que proporcione su ORM.

A must? De ningún modo.

Simplemente escriba el proyecto para que el modelo no sea parte de la base de datos. Escriba un “modelo universal” que dependa de “una base de datos”. Si usa eso para expandirse en un proyecto, ninguno de los dos “sabe” qué es el otro, son cajas negras entre sí.

More Interesting

¿En qué proveedor de hosting debo construir un sitio web de software pirateado?

¿Dreamweaver CC es bueno ahora?

Para fines de trabajo independiente, ¿cuál de los siguientes lenguajes de programación se necesita principalmente para el desarrollo de software (C #, Java, Python o PHP)?

¿Las grandes empresas de desarrollo de juegos usan algún activo de la Unidad de Activos de Unity?

Si fuera a modelar un sitio web como Facebook o Twitter, ¿qué estructura de base de datos / tabla usaría?

Al entrar en el desarrollo de la pila completa usando la pila .NET, ¿qué se debe saber en términos de conceptos, además de la programación OO, para obtener un trabajo?

¿Cómo se decide entre la programación de back-end y front-end?

¿Cuáles son las mejores recomendaciones sobre cómo comenzar a crear un tema de WordPress?

Cómo optimizar el tamaño de la imagen para WordPress sin sacrificar la calidad

¿Dónde puedo encontrar un curso para aprender a crear y vender un tema de WordPress desde el primer código HTML para cargar el tema para vender?

¿La velocidad de carga de un sitio web depende del proveedor de nombres de dominio y sus características?

Cómo crear más espacio entre un botón y un cuadro de texto en HTML o CSS

¿Qué es una compilación front-end? ¿Cómo ayudan Git, Node y Bower en la compilación front-end? ¿Cómo podemos usar Git para administrar activos front-end?

¿Cuáles son los requisitos previos para aprender Angular 4?

Cómo ejecutar TensorBoard en la web real