| |
|
| |

Review Details |
|
|
Also see
Reviews and
How To Review. |
| |
|
| |
|
| |
|
| |

Review
|
|
|
 |
| |
Reviewed: October, 2009 |
| |
Reviewer:
Rob Collins |
| |
|
| |
I picked up this book mainly because it promised to give strong coverage of
the Entity Framework. I had not read any of the other books by Murach, but
they seem to be highly rated, and they pick up consistent praise for the
non-trivial examples of source code. I read a lot of technical books, and
most are light on examples that illustrate real-world concepts. They deal in
language mechanisms -- real world work is left as an exercise for the
reader, as the saying goes.
When I got the book, I was a bit dubious about the scope that the book tried
to tackle. I find it tough to believe that there would be a person out there
who would use this book to learn about the basics of relational databases or
client/server architectures, and then, a scant 600 pages later, be laying
down the serious Entity SQL queries. There are also stops in between that
introduce broad technical and architectural topics. And I know these topics
are complex. I've spent a good part of my recent career deep in .NET data
access technologies. When a book tries to cover too much, it often becomes
an unreadable reference tome, or gets spread so thin that the topics get
short shrift.
But that wasn't the case here. What impressed me most was that the author
(and the publisher) put some real thought into what makes a good technical
book, and what the goals are for developers who are learning technology. It
did the best job of any book I've seen of finding the balance between a pure
reference book, and a book you can sit down and read to get a good overview
of the technology. And make no mistake, there are a lot of technologies
within this book. They are introduced in a fairly logical progression. The
book starts with some of the fundamentals about ADO.NET, then works its way
into discussion about the various data access methods; how they work and
some of the pros and cons of each method. Needless to say, there are various
opinions out there about which data access technology is best in which
situation, but the book tries to paint a balanced portrait without coming
down too hard on any side, or by claiming which one is best.
The author then tackles another broad subject when it discusses the
principles of three layer architectures and how to build them. Again, this
is a topic area that is very easy to get wrong, but the book gets a lot of
things right. So how does it do it? The main technique that the author uses
marries both code and concise descriptions of what the code is doing. Open
nearly any page of the book and you will get a short description of a
concept on the left, then a code snippet on the facing page, followed by an
explanation of what just happened. In that fashion, complex concepts are
broken down into small parts which build on each other as it goes along. The
technique also has the effect of making it a credible reference source. If,
for instance, you just wanted to grab a code snippet about how to create
stored procedure parameters in ADO.NET, you can flip to the relevant page
and grab the code.
Another feature of the book is that it includes source code for a full
application. In this case, it is an invoicing application. Granted, General
Motors would probably not run their business on it, but it does put some
context around the concepts that are introduced. It also improves the
general quality of the code examples, because they are serving a larger
purpose. It’s not just purely showing off individual features of the
language.
So. Getting back to the most relevant section for me, I would say it was a
good introduction to the Entity Framework. I liked the fact that I was never
too far from code and that I could skim past the parts that I already had
experience with. I came to the book with some idea about what I wanted to do
with the Entity Framework, and I wanted to get my hands dirty with some
code. The book helped out immensely in this regard. It was not the end of
the journey; there were some other books and technical materials that I
turned to afterwards to go deeper, but I enjoyed what this contributed to my
understanding.
If you are looking to get rolling on any of the many topics covered in this
book, I think it would serve you well. It can take you to a certain level of
technical depth, and it can give you insight into non-trivial code. |
| |
 |
| |
 |
| |
Copyright © 2000 -
2010 Denver Visual Studio User Group™.
All Rights Reserved. Please see
Notice. |
|