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:
- Examinar el rol de WCF en la arquitectura empresarial: que problemas resuelve, cuales son los escenarios para aplicar esta tecnología.
- Entender la arquitectura completa de WCF
- 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)
Paso 7 - Laboratorio Virtual: "Los fundamentos de programar con Windows Communication Foundation" (90 mins)
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:
- Entender como definir y modificar contratos de datos.
- Entender Instacias de Servidos y Alojamiento de Servicios.
- Entender Operaciones, Ciclo de Vida de Objetos y Sesiones.
- 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/
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:
- Entender las opciones para aoljar aplicaciones WCF y los mecanismos soportados para llamarlas.
- Entender que es un contrato de servicio, como funciona y como crear uno.
- Entender los requerimientos mínimos de los estados del contrato que la configuración del runtime o el ambiente de alojamiento puede no soportar.
- Aprender como construir un Servicio WCF encolado.
- 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:
- Familiarizarse con los mecanismo para extender WCF.
- 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)
- Custom Service Host
https://msdn2.microsoft.com/en-us/library/aa395224.aspx - Message Inspectors
https://msdn2.microsoft.com/en-us/library/aa717047.aspx - Transport Extensibility Samples
https://msdn2.microsoft.com/en-us/library/aa967733.aspx - Channels Extensibility Samples
https://msdn2.microsoft.com/en-us/library/aa967568.aspx - Message Encoder Extensibility Samples
https://msdn2.microsoft.com/en-us/library/aa967732.aspx - Instancing Extensibility Samples
https://msdn2.microsoft.com/en-us/library/aa967565.aspx
Paso 4 - Revisar la documentacion de Administración y Diagnosticos en MSDN (30 mins en ingles)
DIA 5
Objetivos:
- Entender los escenarios comunes de integracion, interoperabilidad y migración.
- 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)
- Integrating with COM Applications
https://msdn2.microsoft.com/en-us/library/ms733928.aspx
(especially https://msdn2.microsoft.com/en-us/library/ms730294.aspx) - Integrating with COM+ Applications
https://msdn2.microsoft.com/en-us/library/ms733094.aspx - Integration with .NET Remoting
https://msdn2.microsoft.com/en-us/library/ms730332.aspx - Interoperability with WSE 3.0
https://msdn2.microsoft.com/en-us/library/ms734745.aspx - Interoperability with ASP.NET Web Services
https://msdn2.microsoft.com/en-us/library/ms731779.aspx
Paso 2 - Revisar los siguientes artículos relacionados con migración
- All About ASMX 2.0, WSE 3.0, and WCF (Aaron Skonnard)
https://msdn.microsoft.com/msdnmag/issues/06/01/servicestation/default.aspx - Anticipating Adopting the Windows Communication Foundation: Easing Future Migration (From ASP.NET)
https://msdn2.microsoft.com/en-us/library/aa738742.aspx - WCF and ASP.NET Compatibility Mode (Wenlong Dong's Blog)
https://blogs.msdn.com/wenlong/archive/2006/01/23/516041.aspx - Migrating ASP.NET Web Services to WCF
https://msdn2.microsoft.com/en-us/library/ms730214.aspx - Migrating WSE 3.0 Web Services to WCF
https://msdn2.microsoft.com/en-us/library/ms732008.aspx
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
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!
Comments
Anonymous
April 24, 2008
no hay nada de lo que yo deseo... deverian de poner: guias de auto estudio para los alumnos de basico de cualquier materia para poder hacer los trabajos bien y que no nos tengamos que inventar las cosas....Anonymous
April 24, 2008
Gracias por tus comentarios, existe un programa llamado MVA que tiene algunos tópicos básicos de programación que te pueden ayudar, al igual que desarrollador 5 estrellas. Si necesitas algo mas básico te recomiendo algun libro de WCF en donde puedes encontrar mayor información, la ayuda del SDK de windows es muy buena tambien y trae ejemplos que van desde el Hello world con WCF hasta muchos ejemplos de extensibilidad e interoperabilidad.