Book Review: Programming WCF Services by Juval Löwy

Part of: The RAM Review

Windows Communication Foundation (WCF) is a software development kit for developing and deploying services on Window. WCF, previously codenamed "Indigo," is a communication system to enable applications, in one machine or many machines connected by a network to communicate. It has been introduced as part of Microsoft's .NET Framework 3.0.

WCF is really a lot of things to a lot of people. To the Web Service developer, it is the ultimate interoperability solution. To the distributed application developer, it is the easiest way to make remote or queued calls. To the systems developer, it is the next generation of productivity-oriented features such as transactions and hosting that provide off the shelf plumbing for applications. To the Application developer, it is a declarative programming model for structuring the application. To the architect, it is how one can finally build service-oriented applications (SOA).

A WCF Service is composed of three parts: a Service class that implements the service to be provided, a host environment to host the service, and one or more endpoints to which clients will connect. All communications with the WCF service will happen via the endpoints. The endpoints specify a contract that defines which methods of the service class will be accessible via the endpoint; each endpoint may expose a different set of methods.

Programming WCF Services will teach you how to design and develop SOA-WCF-based applications. You will learn how to take advantage of built-in features such as service hosting, instance management, disconnected queue calls and security. Programming WCF Services breaks down into ten chapters and three appendixes. You will need to be an experienced developer who has a fair understanding of .NET and C# 2.0. You will need .NET 2.0 and Visual Studio 2005 as well as the .NET 3.0 SDK and .NET 3.0 extensions for VS 2005.

Chapter one, WCF Essentials, begins by explaining what WCF is, its concepts and building blocks. It then concludes with I discussion of the WCF architecture which is really the whole key to everything that is enabled through the remaining book. If you are unfamiliar with SOA, then you should read appendix A, An Introduction to Service-Orientation.

Chapter two, Service Contracts, is geared for describing how to design and work with service contracts. You will learn how to design and factor contracts that cater to reuse. Chapter three, Data Contracts, is dedicated to how the client and service can exchange data without ever actually sharing the data type itself or using the same development technology.

Chapter four, Instance Management, deals with answering which service instance handles which client's request. It provides the rationale for each of the instance management modes. Chapter five, Operations, works with the types of operations that clients can invoke on a service and the related design guidelines you will need to handle.

Continued on the next page Page 1 — Page 2

Article tags

Spread the word
Bookmark and Share
Profile image for T. Michael Testi

Article Author: T. Michael Testi

T. Michael Testi is software developer, a writer, and a photographer. He also blogs at PhotographyTodayNet and at All This and Everything Else.

Visit T. Michael Testi's author pageT. Michael Testi's Blog

Read comments on this article, and add some feedback of your own

Article comments

Add your comment, speak your mind

Personal attacks are NOT allowed.
Please read our comment policy.

blogcritics lists for Jul 06, 2009

fresh articles Most recent articles site-wide

fresh comments Most recent comments site-wide

most comments Most comments in 24hrs

top writers Most prolific Blogcritics for June

top commenters Most prolific Commenters in 24 hrs