Practical Code Generation in .NET
Author: Peter Vogel
Publisher: Addison Wesley
Pages: 375
ISBN: 978-0321606785
Aimed at: .NET Programmers
Rating: 4.5
Pros: Deals with an interesting and useful topic
Cons: Explanations of the code difficult to follow
Reviewed by: Harry Fairhead

This is a really good idea for a book. It explains how to create Visual Studio add-ins that generate code in response to user input.

It starts off with a chapter on why you might want to do generated code - but of course if you have already bought the book there isn't much need for the hard sell.

Banner

Chapter 2 is where the book really starts, with an introduction to creating an add-in - something that is really quite difficult compared to most other .NET programming tasks. The reason is that you have to learn how to access Visual Studio and this is mostly based on COM.

Chapter 3 gets us deeper into code generation with a look at the code model. Chapter 4 is about working with code in the IDE editor including opening documents, inserting, replacing and formatting text and so on.  Chapter 5 is about working with projects and Chapter 6 is on generating language -neutral code.

If this sounds like an impossible task you haven't made the acquaintance of the Code Dom. The Code Dom lets you build a description of procedural code in terms of objects rather like the HTML Dom represents an HTML page without being HTML itself. Once you have a Code Dom structure it can then be rendered into any language  - well any language there there is a provider for.Of course you can always write your own provider for a language of you choice but even then the Code Dom only supports the language features that are common to all .NET languages.

The final chapters in the section discusses generating code with the new Text Template Transformation Tool, T4, and using other tools.

The second part of the book takes the form of case studies. The first is building a connection string manager. The second is about generating validation code and the final case study is about generating data conversion code.

Overall this is quite a good book in that it takes a single topic and deals with it in detail. As a result this is a fairly advanced book and you need to be prepared to do some work in understanding it. However this said the author could have done more to make it seem simpler. The explanations of the code for example are difficult to follow. It is often difficult to work out which particular bit of code the explanations refer to. Overall the result is confusing.

That about sums the book up, confusing in parts but overall if you are interested in code generation its essential reading.


Banner


Continuous Architecture In Practice (Addison-Wesley)

Author: Murat Erder, Pierre Pureur and Eoin Woods
Publisher: Addison-Wesley
Pages: 352
ISBN: 978-0136523567
Print: 0136523560
Kindle: ‎B08ZRTQGLJ
Audience: Software Architects
Rating: 3
Reviewer: Kay Ewbank

This book sets out the case for why software architecture is more important than ever, and in p [ ... ]



Street Coder (Manning)

Author: Sedat Kapanoglu
Publisher: Manning
Date: February 2022
Pages: 272
ISBN: 978-1617298370
Print: 1617298379
Kindle: B09Q3PJQC5
Audience: General
Rating: 4
Reviewer: Ian Elliot
Street Coder - sounds sort of tough but messy at the same time.


More Reviews

 

Last Updated ( Thursday, 17 June 2010 )