Metaprogramming in .NET is designed to help readers understand the basic concepts, advantages, and potential pitfalls of metaprogramming. It introduces core concepts in clear, easy-to-follow language and then it takes you on a deep dive into the tools and techniques you'll use to implement them in your .NET code. You'll explore plenty of real-world examples that reinforce key concepts. When you finish, you'll be able to build high-performance, metaprogramming-enabled software with confidence.
About the Technology
When you write programs that create or modify other programs, you are metaprogramming. In .NET, you can use reflection as well as newer concepts like code generation and scriptable software. The emerging Roslyn project exposes the .NET compiler as an interactive API, allowing compile-time code analysis and just-in-time refactoring.
About this Book
Metaprogramming in .NET is a practical introduction to the use of metaprogramming to improve the performance and maintainability of your code. This book avoids abstract theory and instead teaches you solid practices you'll find useful immediately. It introduces core concepts like code generation and application composition in clear, easy-to-follow language.
Written for readers comfortable with C# and the .NET framework—no prior experience with metaprogramming is required.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
What's Inside
Metaprogramming concepts in plain language
Creating scriptable software
Code generation techniques
The Dynamic Language Runtime
About the Authors
Kevin Hazzard is a Microsoft MVP, consultant, teacher, and developer community leader in the mid-Atlantic USA. Jason Bock is an author, Microsoft MVP, and the leader of the Twin Cities Code Camp.
"An excellent way to start fully using the power of metaprogramming."—From the Foreword by Rockford Lhotka, Creator of the CSLA .NET Framework
Table of Contents PART 1 DEMYSTIFYING METAPROGRAMMING
Metaprogramming concepts
Exploring code and metadata with reflection
PART 2 TECHNIQUES FOR GENERATING CODE
The Text Template Transformation Toolkit (T4)
Generating code with the CodeDOM
Generating code with Reflection.Emit
Generating code with expressions
Generating code with IL rewriting
PART 3 LANGUAGES AND TOOLS
The Dynamic Language Runtime
Languages and tools
Managing the .NET Compiler
Informatique et technologie
À propos de l'auteur
Jason Bock is a Microsoft MVP and a principal consultant for Magenic. He is a leader of the Twin Cities Code Camp and runs the Twin Cities Languages User Group. Jason is the author of four books and many articles on software development.
Kevin Hazzard is a consultant, entrepreneur and Microsoft MVP based in Richmond, Virginia. He co-founded the Richmond Software Craftsmanship Group and runs the Richmond Code Camp. Kevin has served multiple terms on Virginia's Joint Commission on Te
Donner une note à cet e-book
Dites-nous ce que vous en pensez.
Informations sur la lecture
Smartphones et tablettes
Installez l'application Google Play Livres pour Android et iPad ou iPhone. Elle se synchronise automatiquement avec votre compte et vous permet de lire des livres en ligne ou hors connexion, où que vous soyez.
Ordinateurs portables et de bureau
Vous pouvez écouter les livres audio achetés sur Google Play à l'aide du navigateur Web de votre ordinateur.
Liseuses et autres appareils
Pour lire sur des appareils e-Ink, comme les liseuses Kobo, vous devez télécharger un fichier et le transférer sur l'appareil en question. Suivez les instructions détaillées du Centre d'aide pour transférer les fichiers sur les liseuses compatibles.