En esta clase comienza realmente el modelado del dominio del proyecto. Hasta ahora el programa manejaba variables sueltas como nombre, precio y cantidad, lo cual funciona para ejemplos pequeños, pero se vuelve difícil de mantener cuando el proyecto crece.
La solución es agrupar esos datos relacionados en clases, restringir ciertos valores mediante enums y representar datos inmutables mediante records.
Hasta ahora podíamos tener algo como:
string nombre = "Laptop";
decimal precio = 1500m;
int cantidad = 5;
Aunque funciona, estas variables no tienen ninguna relación entre sí.
Podríamos incluso equivocarnos y mezclar datos de distintos productos.
En cambio, una clase permite agrupar toda esa información en un solo objeto.
Producto
├── Id
├── Nombre
├── Descripcion
├── Precio
├── Cantidad
├── Categoria
├── Estado
└── FechaRegistro
Todo pertenece al mismo producto.
Una clase es un molde (template o blueprint) para crear objetos.
Define:
En el proyecto se crea:
src/
Models/
Producto.cs
y dentro: