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


Code: The Hidden Language of Computer Hardware and Software 2nd Ed

Top Book 2023
Author: Charles Petzold
Publisher: Microsoft Press
Date: August 2022
Pages: 480
ISBN: 978-0137909100
Print: 0137909101
Kindle: B0B123P5GV
Audience: General
Rating: 5
Reviewer: Mike James
Code! We all need to know about it.



Oracle PL/SQL By Example, 6th Ed

Author: Elena Rakhimov
Publisher: Oracle Press
Pages: 480
ISBN: 978-0138062835
Print: 0138062838
Audience: Developers interested in Oracle PL/SQL
Rating: 4
Reviewer: Kay Ewbank

This is the sixth edition of a well established title that has been updated for the latest version of PL/SQL (21c).


More Reviews

 

Last Updated ( Thursday, 17 June 2010 )