8 of 9 people found the following review helpful:
2.0 out of 5 stars
Too much of the wrong things, not enough of the right ones, October 8, 2009
This review is from: Programming .NET 3.5 (Paperback)
I have about 5 years of .NET programming experience, limited to .NET 1.1 and 2.0. I bought this book thinking it would be a good "quick hit" to learn, in overview form, about all the new technologies introduced in the two latest revs of .NET; not looking for in-depth coverage of any one subject, just enough to give me my bearings and get me started.
One thing that emerges clearly from reading the book is, this was in fact the authors' intent. In the very first chapter, it says "Our goal is to show you the 25% that you will use 85% of the time... this may well be the only book you need to consult about those parts of .NET that are not central to your business."
And indeed, the first chapter or two do provide a good description of the .NET 3.5 landscape: basically, there are a specific set of about 10 technologies that make up the bulk of what's new: XAML (a new form of UI markup that underlies WPF and Silverlight), Microsoft's take on AJAX, LINQ, WCF, Workflow Foundation and Cardspace.
From there, the book moves into a more specific treatment of each technology, and this is where it really wanders off into the woods, never to return. There is one principal reason for this: using examples the wrong way. Example is the book's central, if not only, teaching method, to the exclusion of necessary conceptual introduction, background, advance organization, and (often) even explanation of the examples themselves.
For instance, let's consider one major new concept-- the "lambda expression" from the chapter on LINQ. The example is shown ("customer => customer.FirstName == 'Donna'"), and then here is the explanation, in its entirety: "The lefthand operand, 'customer', is the input parameter, and the righthand operand is the lambda expression. In this case, it checks whether the customer's FirstName is 'Donna'."
I had to go on-line to learn that a lambda expression is a new, compact way of creating a delegate for an anonymous method, and that these delegates are a major element in the LINQ extension methods, whose parameters generally take the form of "Func(T, TResult)". (I also learned the meaning of "delegate", "anonymous method", and "Func(T, TResult)" from material on-line; to its credit, the book did go into some detail on what "extension methods" are.)
This mode of presentation was very typical-- leading off with an illustration in a vacuum, then following up with an insultingly oversimplified explanation. The section on AJAX was probably the worst.
As for an treatment of anything NOT specifically called for in the examples, forget it. I think the authors must be assuming that, in each case, their example (usually a two-screen application) will actually represent a direct analog to 85% of all usage for the new concept, and that nothing further is needed. Speaking for myself personally, I did not find that to be the case. I would have liked more explanation and less "Hello World".
As a very poorly fleshed-out framework, this book had some value. As I went through it, I at least got enough exposure to know which concepts I would need to understand in order to begin working with .NET 3.5. However, I had hoped for a book that would then go on to actually provide me with such an understanding. In that respect, this book was a major disappointment.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
5 of 6 people found the following review helpful:
5.0 out of 5 stars
The fastest way to come up to speed?, September 18, 2008
This review is from: Programming .NET 3.5 (Paperback)
Some programming books suffer from the Three Little Bears syndrome: they're too detailed or not detailed enough, too conceptual or not conceptual enough, too much of a tutorial or not enough of a tutorial, and so on. The authors of Programming .NET 3.5 solved this problem by establishing clear goals for their book and by combining the insights of a senior program manager at Microsoft (Jesse Liberty) with those of a chief technology officer at an application development firm (Alex Horovitz).
Programming .NET 3.5 takes an integrated approach to Windows Presentation Foundation for Windows applications, Silverlight for delivery of rich internet applications across platforms and browsers, Windows Communication Foundation for web services and service-oriented architectures, Windows Workflow Foundation, CardSpace for user-negotiated identities, and ASP.NET/AJAX for rich client applications. The book's goal is to show how these elements can leverage Model-View-Controller, n-tier, and other long-celebrated architectural patterns while augmenting object-oriented programming with new declarative programming capabilities.
The book is divided into three parts: Presentation Options, Design Patterns (characterized as "an interlude") and The Business Layer.
Presentation Options provides an excellent introduction to eXtensive Application Markup Language, the declarative syntax for desktop-based presentations. This part of the book shows how to build a rich desktop application and later a real-world web-based AJAX-enhanced application using tools that move fluidly between XAML and managed code. Additional topics include an introduction to the Microsoft AJAX library and to the rich interactivity of browser-deployed Silverlight applications.
The Interlude on Design Patterns examines how .NET 3.5 promotes the use of architectural patterns that have only been celebrated with lip service until now.
The Business Layer part of the book shows how to replace ADO.NET classes with Language Integrated Query (LINQ) and defines SOA and shows how to implement SOA with Windows Communication Foundation. Most important, this part of the book presents a complete example of a WCF application and a complete workflow application, and also shows how to apply CardSpace for establishing identity.
Liberty and Horovitz should be commended for setting and then meeting the clearly spelled out goals for their book. The book is well organized and well written, and it follows the time-honored principle of moving from the simple to the complex. Assuming you've installed .NET Framework 3.5 and Visual Studio 2008, then this book just might be the very fastest way to bring yourself up to speed on Microsoft's latest.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
3 of 4 people found the following review helpful:
5.0 out of 5 stars
Excellent resource for .NET 3.5!, September 11, 2008
This review is from: Programming .NET 3.5 (Paperback)
I just finished reading Programming .NET 3.5 from O'Reilly. The book, published in August, is an overview of the latest .NET Framework revision. You'll get an introduction to the topics that have been introduced along the way that include technology from .NET 2.0, .NET 3.0, and the latest version; .NET 3.5. Also included are libraries such as ASP.NET MVC and Silverlight.
You can easily pick up this book and enjoy the introductions to technologies such as Windows Communication Foundation, Windows Workflow Foundation, Windows Presentation Foundation, ASP.NET MVC, and Silverlight. Each of these topics are presented in a way that will be familiar to .NET developers. New developers, without experience in .NET, will be able to take a lot away from this book. It certainly will do more for the developer who already has a .NET background, no matter how brief it is.
That said, if you only pick up the book for the introduction to each technology, you'll be missing the best that this book has to offer. Unlike most technology books these days, this book explains the topics within the context of best practices and real world scenarios. For example, prior versions of ASP.NET did not promote decoupled architectures. In fact, it made it difficult to achieve them. With the technology available in .NET 3.5, modeling and implementing proper architectures is encouraged and facilitated by the framework. This book will show you how that works in .NET 3.5 and introduce you to the technologies at the same time.
I highly recommend this book. It will be on my desk for easy reference for my .NET projects in the future.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No