Rating: - Quite good, and what the title says
I've recently readed this book while travelling to and from work, and my goal was to learn more about Web Services, and precisely those that gave XML responses, so this book was a good candidate.
The book contains what it says: all about web services in .NET. This is good, because you can always have it as a reference book whenever developing web services. It covers SOAP, HTTP POST and GET protocols, ASMX web services and WSDL-created proxy classes, UDDI and DISCO files, state management, caching, session and state management, and even asynchronous examples.
The only "bad" thing about the book that I've found is the "STEP BY STEP" sub-header... At least in this book it means "complete examples in every chapter".
The book is 373 pages long (apart from the appendixes), at least one third of that being code examples. And of that 100+ pages of code, the majority is trivial basic WS code that seeing one is ok, twice maybe, but the third time you just skip to the bold part that marks the "important" code.
The authors could have avoided full samples from later chapters, instead only showing the relevant code snippets.
But anyway, as I started saying it is a recommended book to learn (or get deep into) .NET web services development.
Rating: - Good Overview But Becoming Dated
This book was a fantastic overview of how XML Web Services are encapsulated by the .NET platform and the services provided by the numerous APIs. It offers step-by-step examples that lead you through the various facets of producing and consuming Web Services. It does not delve too deeply into many of the services provided by .NET for bettor or worse.
Four years ago I would have rated this book a 4 star or higher, however, the examples are based upon legacy .NET 1.1 and Visual Studio 2003. Like myself, I would presume that the majority of developers are at least working with .NET 2.0 and VS 2005 now. In addition the current release of both is at 3.5 and 2008 respectively.
The core material of the book is still very much relevant. The examples for how to configure IIS, setup and copy web projects, and manipulate code in the IDE have changed significantly between product releases though. I didn't mind that much because it forced me to have to figure out how to apply the same task in the newer environment. For me that was OK, but beginners may be frustrated by that.
A few notes on the content and examples:
1. In the code exercises, I found that it would have been much more helpful to put the steps for importing classes (C# using / VB import statements) at the beginning of the code exercises instead of at the end so the person typing in the code could better make use of Visual Studio's Intellisense feature.
2. There was a lot of rote copy / retyping the same material from chapter to chapter. The author tried to minimize with copy instructions in each chapter. I felt as though the examples could have been modularized and reused better.
3. The Microsoft UDDI site that chapter 9 discusses no longer functions as described in the text. I skipped it completely.
4. Chapter 15 about consuming Web Services asynchronously was the one that probably had the most version differences between .NET 1.1 and 2.0. The way that callbacks are handled changed dramatically. This was once again a good learning experience for me to figure out how to make it work in 2.0
5. Code examples were generally good, however, the authors coding style for variable names was not all that intuitive. Maybe a short mention of naming convention would have been nice (e.g. what the 'p_' and 'x_' prefixes meant)
Overall, it is a good book and I would recommend it highly if you are still developing on .NET 1.1 / VS 2003, but less so if not. Hopefully, the authors will publish a newer edition sometime soon.
Rating: - Good for beginners
The book can be read in a day and half and at the end you'll really know something useful.
The topics covered are well thought out, though I thought the credit card example was pretty tedious; after a while I just started skipping over it to read what was on topic.
My background is C++ and I came into the C# and XML Web Services with no experience in either; by the end of the book I was comfortable authenticating users, enabling sessions, keeping things in cache and hitting the database.
The book is a fine read and does a good getting you up to speed, one of the best I've read in a while; 4 stars (instead of 5) (-1) for not refactoring the credit card example.
Rating: - Great for beginners
As the suffix title suggests, this book _does_not_rush_ things; very obviously catered for novice developers, it slowly oozes out information a step at a time. The authors exhibit their virtuous patience by going into great lengths to introduce the technology concepts that support XML web services, complete with comprehensive diagrams. These base explanations facilitate a firmer foundational understanding that no developer of XML web services should do without.
Accompanying this conceptual theory are practical-driven chapters, each demonstrating a facet of web service development in the .NET Framework and Visual Studio .NET. The instructions are so minutely explicit and clear, virtually taking the reader by the hand (so much so might annoy more seasoned developers), that building the examples listed are exceedingly easy tasks. And I do not mean that in a blind copy-and-paste manner; the baby steps are enriched with proper explanations to ensure readers have sufficient knowledge of why such a piece of code exists somewhere. Even the asynchronous and multi-threading chapter, a topic that most developers tend not to have a good grip on, is written with amazing clarity. The book's 16 chapters are incredibly easy to read and digest, possessing little (if not none) of that confusing wordy fluff that delivers nothing; this one goes straight to the point, short and sweet.
Sometimes however, short can also mean _truncated_. There are places where it simply stops and closes shop on the chapter when more demonstrations are expected. Take for example the fifth chapter, where it is supposed to show using web services with HTTP requests along (without SOAP). It explains alot about HTTP-GET and HTTP-POST, but only walks through a HTTP-GET practical. I felt omitting HTTP-POST would not fair well in the light of educating novices.
While on the flow of novice practices, it also strangely presents a mix of good and legacy (not necessarily bad) examples. The use of the StringBuilder class to append strings together is a good one, but continuing to code with "" and string.ToLower() show an affinity to past platforms. string.Empty and CaseInsensitiveComparer are respectively preferred choices in the .NET Framework practice.
Almost needless to state, even with the "Advanced" part of the book, one should not be expecting any serious deep topics or design patterns revolving web services here. But I couldn't help but feel it waste for such fantastic writing style not delivering something more that is usually arcane in other books. Who should be blamed for desiring more out of a delicious meal?
Great book to get developers started and up to speed with XML web services. But those looking to become _masters_ should read something else.
Good: Crystal clear explanations; easy following; great beginner material
Bad: Little to offer beyond the beginner; odd omissions; few legacy practices
Rating: - I give this book an A+
I found it to be a very good intro for beginners in XML Web Services like myself. Highly recomended.
|