Purpose of Windows Communication Foundation (WCF)

By using Visual Studio, .NET Framework and WSE, we can quickly build Web services and client applications that can communicate and interoperate with Web services and client applications running on other operating systems. So why do we need WCF? Well, as we have already seen, Web services are just one technology that we can use to create distributed applications for Windows. Others already mentioned include Enterprise Services and .NET Framework Remoting. Another example is Microsoft Message Queue (MSMQ). If we are building a distributed application for Windows, which technology should we use, and how difficult would it be to switch later if we need to?
The purpose of WCF is to provide a unified programming model for many of these technologies, enabling us to build applications that are as independent as possible from the underlying mechanism being used to connect services and applications together (note that WCF applies as much to services operating in non-Web environments as it does to the World Wide Web). It is actually very difficult, if not impossible, to completely divorce the programmatic structure of an application or service from its communications infrastructure, but WCF let us to come very close to achieving this aim much of the time. Additionally, using WCF enables you to maintain backwards compatibility with many of the preceding technologies. For example, a WCF client application can easily communicate with a Web service that you created by using WSE. If we are considering building distributed applications and services for Microsoft Windows, we should use WCF.

Tagged . Bookmark the permalink.

Leave a Reply