Guía de Auto-estudio de WCF (Windows Communication Foundation)

Hoy día los desarrolladores nos encontramos ante el reto de mantenernos actualizados en las nuevas tecnologías constantemente, y muchas veces la unica manera de lograrlo es por iniciativa propia a través del auto-estudio.

Hace poco encontre una guía realizada por expertos en WCF que proponian una serie de pasos que incluyen, tanto la lectura de articulos, como la realizacion de laboratorios en línea para poder actualizar nuestro conocimiento en la implementación de aplicaciones distribuidas con las ultimas tecnologías, y me he tomado el atrevimiento de replicar dicha guía para que ustedes la conozcan y puedan sacarle el mayor provecho.

Prerequisitos

  • Experiencia en el desarrollo de aplicaciones en .Net usando el framework 2.0.
  • Entendimiento básico de las tecnologías del framework 3.0 de .Net en particular WF y WCF.

Requerimientos de Software

  • Sistema Operativo
    • Windows Vista (no requiere la instalación del Framework 3.0 por separado)
    • Windows XP SP2; Windows 2003 SP1; Windows 2003 R2 (requiere la instalación del Framework 3.0 por separado)
  • Herramientas de Desarrollo
    • Visual Studio 2008 Beta 2
    • Visual Studio 2005
      • Requiere el SDK para el Framework 3.0
      • Visual Studio 2005 Extensions para WF y WCF
  • IIS 6.0 o 7.0

Guía de Auto-Estudio

DIA 1

Objetivos:

  1. Examinar el rol de WCF en la arquitectura empresarial: que problemas resuelve, cuales son los escenarios para aplicar esta tecnología.
  2. Entender la arquitectura completa de WCF
  3. Aprender las bases de WCF: Dirección, Enlace y Contratos, mas conocido como el (A,B,C) por sus siglas en Inglés.

Paso 1 - Lectura: los principios del Diseño de Servicios: Patrones y anti-patrones de una visión general básica de SOA (20-30 mins en ingles)

https://msdn2.microsoft.com/en-us/library/ms954638.aspx

Paso 2 - Lectura: El futuro de Windows Communication Foundation - Esta lectura le permitira conocer cuales son los objetivos de WCF, y cual es su rol en una arquitectura empresarial SOA. (20-30 mins en ingles)

https://msdn2.microsoft.com/en-us/library/aa480211.aspx

Paso 3 - Lectura: En el camino hacia Indigo - Guia prescriptiva de las tecnologias existentes para el desarrollo de aplicaciones distribuidas hoy día (20-30 mins en ingles)

https://blogs.msdn.com/richardt/archive/2004/03/05/84834.aspx

Paso 4 - Lectura: Una vista a la arquitectura de Windows Communication Foundation por Yasser Shohoud - revisión de temas basicos como Addresses, Bindings, Contracts (~45 mins en ingles)

https://www.yassers.com/content/soa/WCFArchOverview.aspx

Paso 5 - Lectura: Arquitectura de WCF: revision de temas basicos complementarios como EndPoints, Bindings, Contracts, Behaviors (~45 mins en ingles)

https://msdn2.microsoft.com/en-us/library/Aa480210.aspx

Paso 6 - Laboratorio Virtual: "Entendiendo Windows Communication Foundation" (90 mins)

https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032315324&EventCategory=3&culture=en-US&CountryCode=US

Paso 7 - Laboratorio Virtual: "Los fundamentos de programar con Windows Communication Foundation" (90 mins)

https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032291422&EventCategory=3&culture=en-US&CountryCode=US

Paso 8 - Revision de las ultimas noticias y anuncios de WCF (~20 mins)

https://wcf.netfx3.com/blogs/news_and_announcements/default.aspx

DIA 2

Objetivos:

  1. Entender como definir y modificar contratos de datos.
  2. Entender Instacias de Servidos y Alojamiento de Servicios.
  3. Entender Operaciones, Ciclo de Vida de Objetos y Sesiones.
  4. Entender como implementar mensajería Asincrónica.

Paso 1 - Descargar y construir los ejemplos de Contratos de Datos

https://msdn2.microsoft.com/en-us/library/ms752236.aspx

Paso 2 - Lectura: Serializacion en Windows Communication Foundation. (en ingles)

https://msdn.microsoft.com/msdnmag/issues/06/08/ServiceStation/default.aspx

Paso 3 - Lectura: Blog de Craig McMurty acerca de "Versionamiento en servicios de WCF"

https://blogs.msdn.com/craigmcmurtry/archive/2006/07/23/676104.aspx

Paso 4 - Leer el árticulo "Discover Mighty Instance Management Techniques for Developing WCF Apps"y revisar el código

https://msdn.microsoft.com/msdnmag/issues/06/06/WCFEssentials/

https://msdn.microsoft.com/msdnmag/code/?url=https://msdn.microsoft.com/msdnmag/issues/06/06/WCFEssentials/default.aspx (Codigo)

Paso 5 - Lectura: Documentación en MSDN de "Operaciones sincronas y asíncronas"

https://msdn2.microsoft.com/en-us/library/ms734701.aspx

Paso 6 - Lectura: Blog de Steven M Cohn acerca de "WCF: Operaciones Asíncronas"

https://weblogs.asp.net/stevencohn/archive/2007/02/05/asynchronous-operations.aspx

https://weblogs.asp.net/stevencohn/archive/2007/03/22/wcf-asynchronous-operations-ii.aspx

Paso 7 - Lectura de artículo MSDN "Construya un servicio WCF de respuesta encolada"

https://msdn.microsoft.com/msdnmag/issues/07/02/Foundations/default.aspx

DIA 3

Objetivos:

  1. Entender las opciones para aoljar aplicaciones WCF y los mecanismos soportados para llamarlas.
    1. Entender que es un contrato de servicio, como funciona y como crear uno.
    2. Entender los requerimientos mínimos de los estados del contrato que la configuración del runtime o el ambiente de alojamiento puede no soportar.
    3. Aprender como construir un Servicio WCF encolado.
    4. Entender especificamente que son Sesiones, Instancias y Concurrencia en el contexto aplicable a WCF.

Paso 1 - Lectura: Diseño e implementacion de servicios con una orientación conceptual de alto nivel para diseñar e implementar servicios WCF.

https://msdn2.microsoft.com/en-us/library/ms729746.aspx

Paso 2 - Lectura: Alojamiento de Servicios WCF

https://www.devx.com/codemag/Article/33655/1954?pf=true

Paso 3 - Lectura: Lo que usted necesita conocer acerca de: One-Way Calls, Callbacks, y Eventos por Juval Lowy (incluye codigo fuente)

https://msdn2.microsoft.com/en-us/library/ms729746.aspx

Paso 4 - Lectura: "Build a Queued WCF Response Service" por Juval Lowy (incluye código fuente)

https://msdn.microsoft.com/msdnmag/issues/07/02/Foundations/default.aspx

Paso 5 - Revision del artículo "Build a Queued WCF Response Service" en el portal de Dr Dobb

https://www.ddj.com/dept/windows/196900749

Paso 6 - Lectura: articulo en MSDN acerca de Sesiones, Instanciamiento y Concurrencia

https://msdn2.microsoft.com/en-us/library/ms731193.aspx

DIA 4

Objetivos:

  1. Familiarizarse con los mecanismo para extender WCF.
  2. Entender las capacidades de monitoreo y adquirir habilidades de depuración basica de WCF.

Paso 1 - Lectura: "Entendiendo la extensibilidad de WCF para entender los puntos de extensibilidad" (20~30 mins en ingles)

Paso 2 - Webcast de Arquitectura: "Extendiendo Windows Communication foundation" para ver una demostracion de varios puntos claves de extensibilidad (~70 mins en ingles)

Paso 3 - Revisión de los siguientes ejemplos de extensibilidad que se encuentran en el SDK: (180 mins)

Paso 4 - Revisar la documentacion de Administración y Diagnosticos en MSDN (30 mins en ingles)

DIA 5

Objetivos:

  1. Entender los escenarios comunes de integracion, interoperabilidad y migración.
  2. Aprender los componentes básicos de mensajeria confiable y transacciones en WCF.

Paso 1 - Revisar las siguientes guías de escenarios de integración e interoperabilidad (120 mins en ingles)

Paso 2 - Revisar los siguientes artículos relacionados con migración

Paso 3 - Lectura: Revisión a las transacciones en WCF para entender la fucnionalidad de administración de transacciones.

https://msdn2.microsoft.com/en-us/library/ms733904.aspx

y continue a con la construcciond de una aplicación transaccional

https://msdn2.microsoft.com/en-us/library/ms229973(vs.80).aspx

Paso 4 - Leer el árticulo "Reliable Messaging demystified" por Shy Cohen

https://blogs.msdn.com/shycohen/archive/2006/02/20/535717.aspx

Paso 5 - Escuchar el Podcast "Secure, Reliable Transacted Messaging wiht WCF" Partes 1 y 2 en channel 9 (60 mins en ingles)

https://channel9.msdn.com/Showpost.aspx?postid=173405

https://channel9.msdn.com/Showpost.aspx?postid=173830

Paso 6 - Ver el episodio de MSDN TV de"Reliable Messaging in WCF" (15 mins en ingles)

https://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20050825IndigoSC/manifest.xml

Paso 7 - Laboratorio Virtual

https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032291421&EventCategory=3&culture=en-US&CountryCode=US

Espero que disfruten de esta guía, desafortuandamente aun no existe mucha documentación en español pero si conocen de algun artículo que pueda complementar esta guía en nuestro idioma no dejen de comunicarmelo para agregarlo en la guía, adicionalmente en el programa desarrollador cinco estrellas (www.dce2005.com) encontraras en la estrella 4 una introducción a WCF en español.

Happy Coding!