24
OWIN | MS KATANA y OSS .NET NICOLÁS HERRERA FARIAS @NICOLOCODEV MICROSOFT MVP VISUAL C#

Owin + katana

Embed Size (px)

DESCRIPTION

Presentación usada en un Webcast de la comunidad BDotNet. En esta tratamos el tema de OWIN como una especificación hecha por la comunidad de desarrolladores .NET. Katana como la implementación de Microsoft de ésta especificación y todo el "entorno oss" al rededor de este avance.

Citation preview

Page 1: Owin + katana

OWIN | MS KATANA y OSS .NETNICOLÁS HERRERA FARIAS

@NICOLOCODEV

MICROSOFT MVP VISUAL C#

Page 2: Owin + katana

Agenda Un poco de historia

¿OWIN?

¿Katana?

No todo el OWIN es Katana – OSS .NET

Page 3: Owin + katana

Un poco de historia

Page 4: Owin + katana

ASP(.NET) como una navaja suiza

ASP.NET existe hace más 10 años

ASP clásico

ASPX

ASP.NET (Web Forms) -> System.Web -> IIS

ASP.NET MVC – NUGET | Framework 3,5◦ Distribución independiente◦ ASP.NET MVC 3 y NuGet◦ Aun depende de System.Web.dll e ISS

ASP.NET WEB API◦ Independencia de System.Web.dll :D posibilidad de Self hosting

Katana◦ Implementación de OWIN

Page 5: Owin + katana

1996 - ASP Clásico Active Server Pages: Es una tecnología de Microsoft del tipo "lado del servidor" para páginas web generadas dinámicamente, que ha sido comercializada como un anexo a Internet Information Services (IIS).

Ha pasado por tres grandes versiones:• ASP 1.0 (distribuido con IIS 3.0)• ASP 2.0 (distribuido con IIS 4.0)• ASP 3.0 (distribuido con IIS 5.0)

ASP+

Page 6: Owin + katana

2002 - ASP.NET Es un framework para aplicaciones web desarrollado y comercializado por Microsoft.

Apareció en enero de 2002 con la versión 1.0 del .NET Framework

Quiso ser familiar con los desarrolladores de ASP.NET Clásico y los chicos de VB6

Web Forms

Page 7: Owin + katana

2009 – ASP.NET MVC Marzo 2009 – MVC 1

◦ Framework 3,5

Marzo 2010 – MVC 2◦ Framework 3,5 y 4

Enero 2011 – MVC 3◦ NuGet ◦ IIS Express◦ Framework 4

Agosto 2012 – MVC 4◦ Framework 4 y 4,5 ◦ ASP.NET WEB API

Octubre 2013 – MVC 5

Page 8: Owin + katana

OWINOPEN WEB SERVER INTERFACE FOR .NET

Page 9: Owin + katana

¿Qué es? OWIN es una especificación abierta que define una interfaz estándar entre servidores web y las aplicaciones (En el mundo .NET). Como objetivos de esta interfaz están: Desacoplar servidores y aplicaciones, fomentar el desarrollo de componentes modulares para el desarrollo web en .NET y fomentar el desarrollo open source en herramientas para .NET

Page 10: Owin + katana

¿De donde viene?•Inspirados por la comunidad Rack de Ruby

•Dirigido, liderado y desarrollado por la comunidad

Page 11: Owin + katana

¡Repito! Es una especificación

while (true) { Console.WriteLine("¡Es una especificación!");}

Page 12: Owin + katana

Como lucen las aplicaciones web .NET

Page 13: Owin + katana

Que propone la especificación El Application Delegate

◦ Es la interfaz principal de OWIN using AppFunc = Func< IDictionary<string, object>, // Environment Task>; // Done

Diccionario de entorno◦ El diccionario de entorno almacena información acerca del request, el response e información del

servidor◦ Este diccionario almacena claves estandarizadas

Page 14: Owin + katana

Claves de OWIN

Page 15: Owin + katana

¿Y como va todo esto?

Page 16: Owin + katana

KatanaCOMPONENTES OWIN DE MICROSOFT

KATANAPROJECT.CODEPLEX.COM

Page 17: Owin + katana

¿Qué es? Proyecto de Microsoft open source y sin restricción de plataforma.

Tiene un set de herramientas y componentes OWIN◦ Host, Server, Middlewares, Frameworks

Page 18: Owin + katana

Componentes Hosts:

◦ IIS/ASP.NET◦ Selfhost (Aplicación desktop, Windows Azure Wordker Role, Servicio Windows)◦ owinhost.exe

Servers:◦ HttpListeners◦ IIS/ASP.NET

Middlewares

Frameworks◦ ASP.NET Web API◦ SignalR

Page 19: Owin + katana

Todo listo con Katana ¿Has visto Visual Studio 2013?

Page 20: Owin + katana

No todo el Owin es KatanaFORTALECIENDO LA COMUNIDAD OSS FUERA DEL ENTORNO DE MICROSOFT

Page 21: Owin + katana

Interesantes proyectos oss de la comunidad

Page 22: Owin + katana

Anotaciones finales

Page 23: Owin + katana

IAppBuilder no es de Owin

Page 24: Owin + katana

De hecho, Owin.dll no debería existir