Curso Full Stack C# .NET

En este curso aprenderás los conceptos fundamentales de backend y frontend desarrollando solo con C# .NET. Trabajaremos en el curso con Minimal API para el backend y con Blazor para el Frontend. Curso exclusivo de Metal Code.
Puedes adquirir el curso comprándolo con un solo pago sin límite de tiempo en el botón de aquí abajo, o puedes Suscribirte a Metal Code y acceder a todos los cursos por una cuota temporal.
8.00 USD
13.50 horas
161 clases
Lo que aprenderás
- Programación estructurada
- Programación Orientada a Objetos
- Programación funcional
- Conceptos de Arquitectura de Software
- Protocolo HTTP
- Introducción a SQL
- ORM Entity Framework
- Crear Frontend con Blazor
- Crear Backend con Minimal API
- Arquitectura Limpia
- .NET
Clases del curso
Bienvenida
Bienvenida al Curso
Programación Estructurada (Introducción a C#)
¿Qué son los paradigmas de programación?
Paradigma estructurado
Creación de un proyecto en .NET
Variables
Arrays
Sentencias condicionales
Sentencias de iteración
Funciones
Ejemplo de programa con paradigma estructurado
Programación Orientada a Objetos (Introducción a C#)
Paradigma Orientado a Objetos
Clases y Objetos
Método Constructor
Campos y propiedades
Espacio de nombres (Namespace)
Herencia
Encapsulamiento
Sobrecarga
Sobreescritura
Clases abstractas
Polimorfismo con clases abstractas
Interfaces
Generics
Static
Programación Funcional (Introducción a C#)
Paradigma funcional
Función pura
Funciones de primera clase
Tipo Action
Expresiones Lambda
Tipo Func
Función de orden superior
Tipo Predicate
Introducción a Programación Full Stack
¿Qué es un programador Full Stack?
Introducción a HTTP
Solicitud HTTP
Respuesta HTTP
Formato JSON
Base de Datos
Instalación de Gestor y Creación de Base de Datos
Creación de Tablas
Introducción a SQL
Tipos de Datos
Llaves Foráneas (Foreign Keys)
Diagrama Entidad Relación
Creación de elementos desde el Database Diagram
INNER JOIN
LEFT JOIN y RIGHT JOIN
FULL OUTER JOIN
Arquitectura de Software
¿Qué es una Arquitectura de Software?
Capa vs Componente
Arquitecturas Limpias (Clean Architecture)
Creación de componentes
¿Qué es el Dominio?
Entidades de Dominio
Abstracciones
Casos de Uso
Persistencia de Datos con Entity Framework
Componentes de Datos
Creación de Componente Data e Instalación de Entity Framework
Scaffolding en Entity Framework
Componente Repository
Creación de BrandRepository
Obtener un elemento por medio de Entity Framework
Obtener todos los elementos por medio de Entity Framework
Agregar elementos nuevos por medio de Entity Framework
Editar información por medio de Entity Framework
Eliminar información por medio de Entity Framework
Ejecutando la Arquitectura en un Proyecto de Consola
Objetivo de la sección
Creación de Proyecto de Consola
Inyección de Dependencias
Uso de Inyección de Dependencia
Inyección del Contexto de Entity Framework
Mostrar información
Agregar información
Backend con Minimal API
Creación de Proyecto Backend
Inyección de Dependencias en ASP.NET Core
Enpoint para Obtener Información
Endpoint para Crear Información
Endpoint para Editar Información
Endpoint para Eliminar Información
Documentación de API con Swagger
Introducción a Blazor
¿Qué es Blazor?
Creación de Proyecto de Blazor
Componente Razor
Eventos
Logística de Componentes
Data Binding
Inyección de Dependencia en Blazor
Parámetros en Componentes
Ciclo de vida: inicialización de Componentes: OnInitialized / OnInitializedAsync
Ciclo de vida: cambio de parámetros con OnParametersSet / OnParametersSetAsync
Ciclo de vida: cambio de estado en componente con OnAfterRenderAsync / OnAfterRender
Ciclo de vida: componente destruido con Dispose / DisposeAsync
Frontend con Blazor
Preparación del Backend
Generación de Cliente HTTP desde Contrato Swagger
Inyección del Cliente
Ejecutar Backend fuera de Visual Studio
Configuración de CORS
Obtener información desde Blazor
Agregar información desde Blazor
Editar información desde Blazor
Eliminar información desde Blazor
¿Por qué no debes exponer tus entidades?
Mappers y DTOs
Creación de ProductEntity
Segregación de Interfaces
¿Qué es un DTO?
¿Qué es un Mapper?
Caso de Uso con DTO y Mapper
Creación de ProductRepository
Inyección de Mapper, y nuevos elementos
Creación de Endpoints para obtener información
Actualización de ApiClient
Mostrar información en Blazor
Ejercicio CRUD Full Stack
Agregar campo Marca
Creación de Abstracciones
Creación de Mapper de DTO a Entity
Caso de uso Crear Producto
Caso de uso Editar Producto
Caso de uso Eliminar Producto
Método Crear de Repository
Método Editar de Repository
Método Eliminar de Repository
Inyección de nuevos elementos en proyecto Backend
Endpoint Crear Producto
Endpoint Editar Producto
Endpoint Eliminar Producto
Actualización de ApiClient con swagger
Creación de Producto desde Blazor
Edición de Producto desde Blazor
Eliminar Producto desde Blazor
Validaciones en Frontend (Blazor)
Instalación de FluentValidation
Creación de Validator
Inyección de Validator
Incluir validaciones en Formulario de Blazor
Módulo Maestro-Detalle (Master-Detail)
¿Qué es un Módulo Maestro-Detalle?
Creación de Entity Detalle
Creación de Entity Maestro
Creación de DTO Detalle
Creación de DTO Maestro
Mapper Maestro-Detalle DTO a Entity
Mapper Maestro-Detalle Entity a DTO
Caso de Uso obtener información de ventas
Caso de Uso creación de ventas
Mapper Maestro-Detalle Model a Entity
Repository obtener ventas de la Base de Datos
Mapper Maestro-Detalle Entity a Model
Repository crear ventas en la Base de Datos
Inyección de dependencias en proyecto Backend de nuevos elementos
Métodos de extensión
Endpoint Crear Venta
Endpoint Obtener Ventas
Endpoint Obtener Venta por Id
Actualización de ApiClient por medio de swagger
Obtener Ventas en Frontend Blazor
Configuración de cultura y localización en Blazor
Creación de formulario principal de Maestro-Detalle en Blazor
Creación de formulario detalle de Maestro-Detalle en Blazor
Objeto auxiliar temporal de captura
Agregar detalle dinámicamente
Eliminar detalle dinámicamente
Envió de venta Maestro-Detalle desde Blazor
Validaciones de Formulario de Venta
Conclusión y código fuente
Conclusión, despedida y código fuente.
Planes de Metal Code
Mensual
$10 USD
Es la membresía más económica y que las personas eligen más
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Trimestral
$25 USD
Si deseas terminar más de 3 cursos, esta es la membresía ideal
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Semestral
$40 USD
Membresía para las personas que deseen ver más de 5 o 6 cursos
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Anual
$60 USD
Si deseas ver todos los cursos de Metal Code, esta membresía es la ideal
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización