Internet Cross Logo
Internet Cross your one stop web tutorial website
Your Ad Here

Code Generation in Microsoft .NET

List Price: $59.99
Our Price: $26.76
Your Save:$ 33.23 ( 55% )
Availability: Usually ships in 24 hours
Manufacturer: Apress Average Customer Rating: Average rating of 4.0/5Average rating of 4.0/5Average rating of 4.0/5Average rating of 4.0/5Average rating of 4.0/5

Buy it now at Amazon.com!

Back to previous page




Code Generation in Microsoft .NET


Binding: Paperback
Dewey Decimal Number: 005.45
EAN: 9781590591376
ISBN: 1590591372
Label: Apress
Manufacturer: Apress
Number Of Items: 1
Number Of Pages: 760
Publication Date: 2004-01-19
Publisher: Apress
Studio: Apress

Accessories
Workflow in the 2007 Microsoft Office System
Pro C# with .NET 3.0, Special Edition (Pro)
Microsoft SharePoint: Building Office 2007 Solutions in C# 2005 (Expert's Voice in Sharepoint)

Related Items

Spotlight customer reviews:

Customer Rating: Average rating of 2/5Average rating of 2/5Average rating of 2/5Average rating of 2/5Average rating of 2/5
Summary: Mediocre
Comment: Overall I'm disappointed with the book, there is nothing new here. The downloadable code is also poorly coded. If you have experience with code generation I'm not sure you'll find anything new in the book otherwise if you're just starting out with code generation then it might be a good starting point. I'll have to agree with the reviewer Mox Blu on this one.

Customer Rating: Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5
Summary: Worth it's weight in gold
Comment: I agree with the author that "code generation" will grow as a dominant force in the IT industry over the next 5 years. When you hear stories about programming tasks being shipped overseas, its not the deep, creative thinking of type work that is shipped... no, they ship the redundant, grunt type of coding which could be described by an algorithm. When you find yourself writing code falling into a predictable pattern, then perhaps you should consider code generation.

Before I read the book, I was already convinced that code generation was a valuable thing to do, but the book helped reshape how I thought of code generation in the context of a large project, or even an IT department.

Here are the main points that resonated with me:
1) Code Generation should be thought of as a step in the overall project build process.
2) The biggest payoff will be gained by generated stored procedures and middle tier components.
3) Code generation allows the architect to decouple the system meta data from the technology. (eg. I can change my data access strategy by simply modifying my template)
4) It is possible to generate UI components.

Finally, the book goes beyond code generation. You will learn other interesting tidbits about Visual Studio .NET and the .NET framework. The appendices include good primers on XML/XSLT and her Code Generation harness. The freely downloadable harness is designed to orchestrate the CodeGen process, but you really need to the book to understand how it works and how it can be extended.

Customer Rating: Average rating of 4/5Average rating of 4/5Average rating of 4/5Average rating of 4/5Average rating of 4/5
Summary: Specialized book that is not for everyone, but very good
Comment: I always respect authors and publishers who have the courage to publish highly specialized books such as this one. It will not be relevant to most of the developers doing general .NET development, for but those needing help with Code Generation this is absolutely required.

In general, when I see many classes that are nearly identical they can be designed in a much better way using normal OO constructs (base class with children if required for special cases to override). In general, if possible do not mark your classes as SEALED and mark each method as virtual. This gives other the ability to extend your work. There is nothing more frustrated then finding a class that is close to what you need and finding it is sealed to you resort to encapsulation (which many would argue is a better approach anyway and in many cases they are correct).

However when you have tedious classes that are different in fundamental ways (like a database layer) this can eliminate the drudgery of much of the effort.


In addition to a deep understanding of multi-threading this is one area the senior developer should understand and study.

Kind Regards,
Damon Wilder Carr, Chief Technologist and CEO

Customer Rating: Average rating of 3/5Average rating of 3/5Average rating of 3/5Average rating of 3/5Average rating of 3/5
Summary: Frustrating Book..
Comment: This is a very frustrating book for a couple of reasons. First contrary to what the book and some of the previous reviewers have said, there is no C# support for this book.

I quote the back of the book, "In addition to the text, the tools in the book (downloadable in both VB.net and C#)..." This is untrue. While there are some code examples in C# in the download, almost everything is in VB.net. This includes the code generation harness, which to me is the whole reason to buy the book. If you don't believe me download the code before you buy the book. There is a note in the read me that says as much.

While this might be of small significance to all you VB types, I came to MS from the Java/C world and don't know VB.

The second frustrating thing about the book is that it is about how to deploy a code generator not how to write one. There is a lot of discussion about metadata extraction, how to write good handcrafted code, etc. But the only discussion about how the code generation works is way out in Appendix C: Details of the Code Generation Harness.

Now if this is supposed to be a beginning book on code generation, shouldn't it talk about the code generator and how it works in the actual book??

I wish that someone would have told me these things before I bought it. I think down the road this may be a useful book once can get my hands around the generator. It has chapters on things metadata extraction and interface generation that look very interesting. For that reason I am giving it a 3.


Customer Rating: Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5Average rating of 5/5
Summary: interesting
Comment: Much of this book is obvious - use of XSLT to to generate code files, how to consume sql metadata. But the author does a GREAT job of presenting the information in useful context. I recommend it.

 

Editorial Reviews:

As I was running through a transformation that wouldn't do what I wanted, I remembered the rest of (Code Generation in Microsoft .NET) and 20 minutes later all was good in the world.

— William Ryan, KnowDotNet.com Team Member

Code generation has the potential to revolutionize application development. Rather than handcrafting each piece of code, developers are increasingly turning to code generation based on templates and applications of business logic to automatically perform a variety of tasks. This book teaches the technical details of code generation in .NET through a coherent series of steps that will help you to incorporate code generation into your own development efforts.

Veteran author Kathleen Dollard teaches code generation as a scripted repeatable process using templates you control, so youre not tied to a particular framework or style. Because you can regenerate code at any time, you can incorporate changes, including database changes, throughout the life of your application. The templates are flexible and designed to work smoothly with the handcrafted code youll use to customize your application. The underlying fundamentals are explained along with three specific techniques: outputting code to a stream, using the Code DOM, and using XSLT-based code generation.

In addition to the text, the tools in the book (downloadable in both VB .NET and C#) include a mechanism to extract information from SQL Server; a tool for editing and running code-generation scripts; a simple, flexible ORM tool that relates your database structure to your runtime class model; and a set of templates you can use as the starting point for your adventures in code generation.

Generating repetitive sections of code frees you to focus on the features that make your application unique. Code generation will turbo-charge your development cycles by offering speed, reusability, agility, and consistency. Go forth and generate!




Buy it now at Amazon.com!