Saltar al contenido

cuál es la diferencia entre un modelo y una entidad

Hacemos una verificación profunda cada sección en nuestra página web con la meta de enseñarte en todo momento la información certera y certera.

La definición de estos términos es bastante ambigua. Encontrarás diferentes definiciones en diferentes lugares.

Entidad: Una entidad representa una instancia única de su objeto de dominio guardado en la base de datos como un registro. Tiene algo attributes que representamos como columnas en nuestras tablas.

Modelo: Un modelo generalmente representa un objeto del mundo real que está relacionado con el problema o el espacio de dominio. En programación, creamos clases para representar objetos. Estas clases, conocidas como modelos, tienen algunas propiedades y métodos (que definen el comportamiento de los objetos).

ViewModel: El término ViewModel se origina en el MVVM (Model View ViewModel) patrón de diseño. Hay casos en los que los datos que va a representar la vista provienen de dos objetos diferentes. En tales escenarios, creamos una clase de modelo que consta de todas las propiedades requeridas por la vista. No es un modelo de dominio, sino un ViewModel porque, una vista específica lo usa. Además, no representa un objeto del mundo real.

Modelo de datos: Para resolver un problema, los objetos interactúan entre sí. Algunos objetos comparten una relación entre ellos y, en consecuencia, forman un modelo de datos que representa los objetos y la relación entre ellos.

En una aplicación que gestiona pedidos de clientes, por ejemplo, si tenemos un cliente y un objeto de pedido, estos objetos comparten una relación de muchos a muchos entre ellos. El modelo de datos eventualmente depende de la forma en que nuestros objetos interactúan entre sí. En una base de datos, vemos el modelo de datos como una red de tablas que se refieren a algunas otras tablas.

Para saber más sobre las relaciones de objetos, visite la publicación de mi blog: Conceptos básicos de las relaciones de objetos

Para obtener más detalles, visite la publicación de mi blog: Entity vs Model vs ViewModel vs DataModel

Espero no haberme perdido tu punto aquí king.net …

De todos modos, suponiendo que esté hablando de modelado de entidades o modelado de relaciones entre entidades (ERD):

  • una entidad representa cualquier entidad del mundo real, por ejemplo, estudiante, curso,
  • una entidad tendrá attributes – por ejemplo, el estudiante tiene nombre, apellido, fecha de nacimiento
  • una entidad tendrá relaciones, por ejemplo, el estudiante “está inscrito en” un curso (donde el estudiante y el curso son entidades con attributes y “está inscrito en” es la relación.
  • la relación puede ser “uno a uno”, “uno a muchos” o “muchos a muchos”; por ejemplo, un estudiante “está inscrito en” muchos cursos y, de manera similar, un curso “tiene” muchos estudiantes.
  • las relaciones también tienen cardinalidad

Agregar relaciones entre entidades crea un “modelo de datos”. Ha modelado algún sistema del mundo real y las entidades / objetos internos en ese sistema. El siguiente paso es normalizarlo para asegurarse de que cumpla con la “forma normal”.

En términos de ERD, puede tener modelos “lógicos” y “físicos”. Lo lógico describe el modelo de datos en términos simples de alto nivel que retiene el detalle técnico requerido para implementarlo. Representa la descripción general de la solución del sistema. El modelo físico incluye los detalles técnicos necesarios para implementar realmente el sistema (como “tablas de unión de muchos a muchos” necesarias para implementar relaciones de “muchos a muchos”).

Aquí hay algunos tutoriales en línea (aunque estoy seguro de que debe haber miles):

  • http://www.maakal.com/maakalDB/Database101ERDpart1.htm
  • http://www.itteam-direct.com/gwentrel.htm
  • http://www.bkent.net/Doc/simple5.htm

No estoy muy seguro de lo que quiere decir con “modelo” y “modelo de vista” en un contexto relacionado. No estoy seguro si puede estar confundiendo esto con el paradigma Modelo-Vista-Controlador (MVC). Aquí, un modelo es un componente de datos y la vista representa un observador de esos datos (como una tabla o un componente de la interfaz de usuario de gráfico). Hay mucho en línea que explica “controlador de vista de modelo” o “MVC”.

Espero que esto ayude, Wayne

En primer lugar, para conocer Entity debe conocer Class. Todos ellos representan los mismos campos pero la terminología cambia según la declaración.

Consideremos una tabla de cualquier base de datos.[SQL,ORACLE,Informix,Cassandra..] como ejemplo.

CLASE:

Generalmente, una tabla se considera una clase hasta que se agrega a edmx o dbmx.

 //Student class
        public class Student()
        
        //Properties
        public int StudentNumber;
        public string StudentName;
        

ENTIDAD:

  • Después de arrastrar, soltar / agregar la tabla a dbmx / edmx, se denomina Entidad.

  • Cada Entidad se genera a partir de su clase correspondiente y podemos agregar
    attributes a la entidad que se utilizan para realizar operaciones utilizando
    linq o entidad.

MODELO DE DATOS:

  • Contiene todos los campos de la tabla.

  • DATAMODEL es una referencia de clase directa a su cshtml o controlador donde puede acceder al attributes para realizar operaciones CRUD.

MODELO DE VISTA:

  • Se producen algunas situaciones en las que necesitamos realizar operaciones CRUD en más de un modelo (tabla).
  • Entonces combinamos todos nuestros modelos requeridos en una clase y los definimos en su constructor.

Ejemplo: supongamos

//Student class
public class Student()

//Properties
public int StudentNumber;
public string StudentName;

//Marks Class
Public class Marks()

public int Maths;
public int Physics;
public int Chemistry;

//Now sometimes situations occur where we have to use one datamodel inside //other datamodel.
public Student StudentModel;

valoraciones y comentarios

Si crees que te ha sido de ayuda este post, te agradeceríamos que lo compartas con otros seniors de este modo contrubuyes a dar difusión a este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags :

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *