owin + katana
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.TRANSCRIPT
![Page 1: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/1.jpg)
OWIN | MS KATANA y OSS .NETNICOLÁS HERRERA FARIAS
@NICOLOCODEV
MICROSOFT MVP VISUAL C#
![Page 2: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/2.jpg)
Agenda Un poco de historia
¿OWIN?
¿Katana?
No todo el OWIN es Katana – OSS .NET
![Page 3: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/3.jpg)
Un poco de historia
![Page 4: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/8.jpg)
OWINOPEN WEB SERVER INTERFACE FOR .NET
![Page 9: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/9.jpg)
¿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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/10.jpg)
¿De donde viene?•Inspirados por la comunidad Rack de Ruby
•Dirigido, liderado y desarrollado por la comunidad
![Page 11: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/11.jpg)
¡Repito! Es una especificación
while (true) { Console.WriteLine("¡Es una especificación!");}
![Page 12: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/12.jpg)
Como lucen las aplicaciones web .NET
![Page 13: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/14.jpg)
Claves de OWIN
![Page 15: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/15.jpg)
¿Y como va todo esto?
![Page 17: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/17.jpg)
¿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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/18.jpg)
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](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/19.jpg)
Todo listo con Katana ¿Has visto Visual Studio 2013?
![Page 20: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/20.jpg)
No todo el Owin es KatanaFORTALECIENDO LA COMUNIDAD OSS FUERA DEL ENTORNO DE MICROSOFT
![Page 21: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/21.jpg)
Interesantes proyectos oss de la comunidad
![Page 22: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/22.jpg)
Anotaciones finales
![Page 23: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/23.jpg)
IAppBuilder no es de Owin
![Page 24: Owin + katana](https://reader036.vdocuments.co/reader036/viewer/2022081422/557b555fd8b42a1f1a8b472d/html5/thumbnails/24.jpg)
De hecho, Owin.dll no debería existir