| |
|
| |

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

Review
|
|
|
 |
| |
Reviewed: July, 2010 |
| |
Reviewer:
Fernando Cardenas
|
| |
|
| |
Utter the words “code generation” in a room of developers and everyone will
have an opinion about these two words. Today, code generation is a daily
part of what developers do, probably without realizing it. In fact, Visual
Studio has been generating code since its 2002 debut and without the code
generation features in it, our lives would all be a bit more tedious in
terms of creating project files, WSDL, mapping classes, configuration files,
and the myriad files that are auto-generated (code generated, if you will)
for us. In fact, the Microsoft .NET framework has had code generation in the
core framework since version 1.0 with the introduction of the CodeDOM. If
you are interested in ending many repetitive tasks in your developer
workflow, you should continue reading.
That’s all well and good, but how does anyone _USE_
custom code generation to make their lives easier? Enter “Practical Code
Generation in .NET” by Peter Vogel. This book is a hands-on, well-written,
_practical_ book on generating code (mostly) inside of Visual Studio
versions 2005, 2008, and 2010. Peter makes it clear that he has used code
generation successfully in his programming career and continues to do so in
a successful manner using the wisdom that he shares in this book. I have
been working heavily with code generation since 2003 and consider myself an
expert in generating _entire_ working applications from visual and textual
models/DSLs, and I find this book _the_ reference on how to generate code
inside (and a little outside with the CodeDOM and T4) all recent versions of
Visual Studio. If you have any inklings of generating code inside Visual
Studio, you should run, not walk, to the nearest bookstore or web browser
(you may even be in front of one now) and purchase this book. It will save
you days if not weeks of effort in navigating the complexities of code
generation in Visual Studio. Peter laces some pretty amazing tidbits of
practical information through the text on topics like Visual Studio-specific
file locking when generating software that could waste hours of your time
debugging root causes. Tips like that can only be learned from many hours of
serious debugging, and Peter is happy to share his solutions with the reader
in a way that is relevant and easy to digest.
“Practical Code Generation in .NET” first introduces
you to a few different ways to generate code given specific scenarios (see
the table of contents for more details on the specifics). He outlines each
code generation scenario and walks through a specific, practical example
that is easy to follow and easy on the brain. Then, the last 150 pages are
dedicated to practical uses of code generation with easy-to-digest samples
that walk you through the process in a way that preserves your dignity as a
human being. Please note that this book is not about building a code
generation system to rule them all. It is really about creating bits in
Visual Studio that help you in your everyday tasks as a developer. I found
his writing style of using specific examples to illustrate code generation
very effective.
One small, little quibble with the book: I think that
it should be renamed to “Super Practical Code Generation Mostly in Visual
Studio Versions 2005, 2008, and 2010 from a Visual Studio, Code Generation
Ninja.” And that is why I am not in marketing.
Overall, a great read and a must-have guide if you are
serious about code generation inside Visual Studio.
Fernando Cardenas is the Chief Architect at
Customer Solutions Group (CSG), a Microsoft Surface Strategic Partner. Using
the power of the web and Microsoft Surface, CSG brings together a unified
online and in-store shopping experience for major retailers. In Fernando's
spare time, he works on generating entire working applications from visual
models in a technology- and architecture-agnostic way that is easy for
developers to use at
AlphaTypeIt. |
| |
 |
| |
 |
| |
Copyright © 2000 -
2012 Denver Visual Studio User Group™.
All Rights Reserved. Please see
Notice. |
|