Curso: ASP.NET Core

curso asp.net
Estado actual
No Inscrito
Precio
Gratuito

Es la nueva plataforma de código abierto y multi-plataforma para construir modernas aplicaciones conectadas a internet y basadas en la nube, como web, Apps, IoT, y aplicaciones móviles cliente y de servicios. C

on ASP.NET Core puedes desarrollar y desplegar las aplicaciones en Windows, Mac y Linux, y se pueden ejecutar sobre .NET Core o sobre .NET Framework.

Es un rediseño importante de ASP.NET, que las hacen más ligeras y con una plataforma modular. Ya no está basado en System.Web.dll, sino en un conjunto de paquetes, de los cuales se utilizan aquellos que son necesarios para la aplicación, reduciendo de esta forma los servicios, facilitando la seguridad, mejorando el rendimiento, y disminuyendo el coste en los modelos de pago por uso.

Audiencia

Programadores con o sin conocimientos en .NET en entorno Web.

Objetivos del curso

Temario

  • Teoría

    • Diferencias entre la programación web y la programación de escritorio
    • Qué es .Net Core
    • Qué diferencias hay entre ASP.Net Core y la versión del Framework .Net
    • Trabajando con Visual Studio.
      • Dependencias y referencias
      • Plantillas previas
    • Ciclo de vida de una aplicación. Desarrollo, debug, testing, publicación
  • Práctica

    • Primer contacto con Visual Studio 2017
  • Teoría

    • Descripción de OWIN
    • Proceso de una petición web. Protocolos implicados. Request y Response
    • Herramientas de ayuda. cURL,WGet y Postman
    • Programación avanzada en C#
      • Interfaces
      • Generics. Tipado fuerte
      • Extensión de clases
      • Delegates
      • Expresiones lambda
      • Programación asíncrona
    • Inyección de dependencias
      • Descripción y motivación: SOLID
      • IoC Containers
      • Descripción de la implementación built-in en Asp.Net Core
  • Prácticas

    • Descarga y uso mínimo de Postman
    • Creamos un interface y lo implementamos
    • Se presenta una lista de strings y se extiende un método
    • Se invoca un delegate, se redefine con una expresión lambda
    • Se hace un ejemplo para comparar la invocación síncrona o asíncrona de una tarea
    • Se crean dos proyectos distintos, sin y con el paradigma de DI, para ver la capacidad de desacoplar componentes
  • Teoría

    • Arquitectura
      • Host, Servidores, middleware, aplicación
      • Comparación con el modelo IIS y su integración
      • Entornos
      • Objetos que implementan la funcionalidad
        • WebHostBuilder
        • ApplicationBuilder
        • HostingEnvironment
        • LoggerFactory
      • Infraestructura (cacheado, logging, autenticación, configuración, globalización)
    • Componentes.
      • Básicos: *.csproj, Program, Startup
      • Otros: appSettings.json, web.config, bower, bundleconfig
    • Configuración modular de la pipeline
  • Práctica

    • Ejemplo con HelloWorld. (Plantilla de VS vacía)
      • vemos el csproj, abrimos en el explorador las dependencias y abrimos NuGet
      • Arrancamos con IISExpress y con Kestrel
    • Vemos Program y Startup. Quitamos Insights
    • Prueba con Map, Use y Run
    • Creamos el interface y la clase WhatsApp y la registramos como Singleton
    • Descargamos el paquete de StaticFiles, lo metemos en la Pipeline y lo usamos Ligero, modular, testeable, fullstack, a la última. Rediseño desde cero, por dentro no se parece a los anteriores MVC, pero por fuera sí.
  • Aproximación A. Introducción a MVC
    • Teoría

      • Definiciones de Controller, Model, View
      • Actions y valores de retorno
      • Name conventions para simplificar todo
      • Estructura de carpetas
    • Práctica

      • Preparar startup para MVC sobre una Aspnet vacía y Crear un controller
      • Generar un nuevo proyecto web Application Cambios suaves sobre HomeController y Views en MVC
  • Aproximación B. Trabajando con MVC
    • Teoría

      • ViewBag
      • Model binding
      • Model validation
      • Razor views
      • Layout
    • Práctica

      • Crear un modelo de una sola clase con una vista html
      • Pasar a la vista mediante ViewBag y mediante el modelo
      • Crear un layout a medida y usarlo tocando _ViewStart y _ViewImports
      • Ver el Model binding y el Model validation en acción
  • Aproximación C. MVC Productivo
    • Teoría

      • Routing – convention vs attribute based
      • Helpers: HTML Helpers y Tag helpers
      • Tecnologías de cliente.
        • Bootstrap y JQuery
        • Bower
        • Gulp
      • Qué es un O/RM. Entity Framework.
        • Code first
        • ContextTracker
        • Migraciones
      • Scaffolding de controllers y views
    • Práctica

      • Vemos Bower, BundleConfig y Gulp
      • Usamos routing por atributos
      • Creamos modelo DatosTrabajador (que tiene email)
      • Configurar EF a mano (con DI y appsettings) y hacemos CRUD
      • Hacemos Migration y actualizamos DB
      • Crear un tag helper email
      • Arreglamos el select de los enum. Retocamos con JQuery y Bootstrap alguna cosa. Añadimos nuestro tag helper
  • Aproximación D. Toque profesional
    • Teoría

      • ViewModels
      • Hablamos de automapper sin usarlo
      • Tipado fuerte de appSettings
      • Filters
      • Partial Views y ViewComponents
    • Práctica

      • Hacer modelo y un ViewModel
      • Crear un filtro de validación
      • Incluir un viewComponent
  • Aproximación E. Web API & SPA
    • Teoría

      • WebAPI
      • SPA
    • Práctica

      • Crear un WebAPI como backend
      • Crear un SPA como frontend que use el webAPI
  • Aproximación F. Temas transversales
    • Teoría

      • Seguridad. Autenticación y autorización
      • Testing unitario con xUnit y Moq
      • Publicación FDD y SCD sobre IIS
    • Práctica

      • Hacer proyecto de testing sobre la webAPI anterior
      • Dar seguridad con OpenID Connect de Google
      • Mantener estado con cookie de autenticación
      • Publicar en IIS la aplicación webAPI

Tres primeros videos del curso

Soluciones

Nuestros Servicios

Tal vez te interese

Aquí estamos

¿Cómo te podemos ayudar?

Logo atención al cliente

Mensaje enviado con éxito

Un especialista se pondrá en contacto cuanto antes.