Windows Communication Foundation (WCF) es una plataforma de mensajería que forma parte de .NET Framework 3.0 y permite el desarrollo rápido de sistemas distribuidos y aplicaciones basadas en arquitecturas orientadas a servicios. WCF implementa estándares de interoperabilidad, seguridad y diferentes modelos de mensajería. Los desarrolladores pueden crear aplicaciones utilizando WCF en Windows XP, Windows Server 2003 y Windows Vista.
2.
Windows Communication Foundation o WCF (también conocido
como Indigo), es la plataforma de mensajería que forma parte de
la API de la Plataforma .NET 3.0 (antes conocida como
WinFX, y que no son más que extensiones para la versión 2.0). Se
encuentra basada en la Plataforma .NET 2.0 y de forma
predeterminada se incluye en el Sistema Operativo Microsoft
Windows Vista.
Fue creada con el fin de permitir una programación rápida de
sistemas distribuidos y el desarrollo de aplicaciones basadas en
arquitecturas orientadas a servicios (también conocido como
SOA), con una API simple; y que puede ejecutarse en una
máquina local, una LAN, o sobre Internet en una forma segura.
3.
Los desarrolladores pueden crear aplicaciones utilizando WCF, y
aunque inicialmente fue desarrollado para este Sistema Operativo,
también puede ser utilizado en Windows XP y Windows 2003 Server.
Esto debido a una decisión tomada por Microsoft, para permitir su
utilización por la mayor parte de desarrolladores que trabajan sobre la
línea de productos relacionados con la tecnología .NET.
Es posible crear aplicaciones basadas en WCF utilizando Microsoft
Visual Studio 2005 en su entorno de desarrollo integrado. Microsoft ha
liberado un paquete de extensiones y un Kit de Desarrollo que puede ser
utilizado con esta tecnología y otras que se incluyen en la Plataforma
.NET v3.0.
El conjunto de clases .NET que conforman la API de WCF, están
basados en la Plataforma .NET 2.0 y son de libre distribución. El
compilador de Visual Studio, puede ser combinado con un IDE gratuito,
alguna solución para programación gratuita para desarrolladores no-
profesionales o estudiantes, en el caso que prefieran no desarrollar con
ediciones gratuitas o Express de Visual Studio 2005.
Desarrollando con WCF
4. Orientación a servicios
Como consecuencia del uso de los estándares de
WS, WCF le permite crear aplicaciones orientadas a
servicios. SOA, la arquitectura orientada a servicios es el
uso de servicios web para enviar y recibir datos. Los
servicios tienen la ventaja general de estar débilmente
acoplados entre una aplicación y otra en lugar de
incluidos en el código. Una relación de acoplamiento
débil implica que cualquier cliente creado en cualquier
plataforma puede conectar con cualquier servicio
siempre y cuando se cumplan los contratos esenciales.
Caracteristicas de WFC
5.
Interoperabilidad
WCF implementa los estándares del sector modernos para la
interoperabilidad de servicios web. Para obtener más información
sobre los estándares admitidos, vea Interoperabilidad e
integración.
Seguridad
Es posible cifrar los mensajes para proteger la privacidad, así
como obligar a los usuarios a que se autentiquen antes de
permitirles recibir mensajes. La seguridad puede implementarse
utilizando estándares conocidos como SSL o WS-
SecureConversation. Para obtener más información, veaSeguridad
en Windows Communication Foundation.
6.
Varios modelos de mensajes
Los mensajes se intercambian mediante uno de los
distintos modelos. El más común es el de
solicitud/respuesta, en que un extremo solicita datos
de otro extremo. y el otro extremo responde. Existen
otros modelos, como un mensaje unidireccional, en
que un único extremo envía un mensaje sin esperar
ninguna respuesta. Un modelo más complejo es el
modelo de intercambio dúplex donde dos extremos
establecen una conexión y envían datos hacia
delante y hacia atrás, similar a un programa de
mensajería instantánea. Para obtener más
información sobre cómo implementar diferentes
modelos de intercambio de mensajes mediante
WCF, vea Contratos.
7.
Mensajes confiables y en cola
WCF admite intercambio de mensajes confiable usando sesiones
confiables implementadas sobre mensajería WS-Reliable y mediante
MSMQ. Para obtener más información sobre la compatibilidad con
mensajería confiable y en cola en WCF, vea Colas y sesiones de
confianza.
Extensibilidad
La arquitectura de WCF tiene varios puntos de extensibilidad. Si se
necesita una función adicional, existen una serie de puntos de
entrada que le permiten personalizar el comportamiento de un
servicio. Para obtener más información sobre los puntos de
extensibilidad disponibles, vea Extensión de WCF.
8.
Transacciones
WCF también admite las transacciones que usan uno de los tres
modelos de transacción: las transacciones WS-Atomic, las API del
espacio de nombres System.Transactions y Coordinador de
transacciones distribuidas de Microsoft. Para obtener más
información sobre la compatibilidad con transacciones en WCF, vea
Transacciones.
Compatibilidad con AJAX y REST
REST es un ejemplo de una tecnología de la Web 2.0 en evolución.
WCF se puede configurar para procesar datos XML “sin formato”
que no se ajustan en un sobre SOAP. WCF también se puede extender
para admitir formatos XML concretos, como ATOM (un estándar
popular de RSS), e incluso formatos no XML, como notación de
objetos JavaScript (JSON).