Metaprogramming in .NET

Β·
Β· ΠŸΡ€ΠΎΠ΄Π°Π²Π΅Ρ†: Simon and Schuster
ЭлСктронная ΠΊΠ½ΠΈΠ³Π°
360
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ страниц
МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

Об элСктронной ΠΊΠ½ΠΈΠ³Π΅

Summary

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
  1. Metaprogramming concepts
  2. Exploring code and metadata with reflection
  3. PART 2 TECHNIQUES FOR GENERATING CODE
  4. The Text Template Transformation Toolkit (T4)
  5. Generating code with the CodeDOM
  6. Generating code with Reflection.Emit
  7. Generating code with expressions
  8. Generating code with IL rewriting
  9. PART 3 LANGUAGES AND TOOLS
  10. The Dynamic Language Runtime
  11. Languages and tools
  12. Managing the .NET Compiler

Об Π°Π²Ρ‚ΠΎΡ€Π΅

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

ΠžΡ†Π΅Π½ΠΈΡ‚Π΅ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ

ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ своим ΠΌΠ½Π΅Π½ΠΈΠ΅ΠΌ.

Π“Π΄Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³ΠΈ

Π‘ΠΌΠ°Ρ€Ρ‚Ρ„ΠΎΠ½Ρ‹ ΠΈ ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Ρ‹
УстановитС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Google Play Книги для Android ΠΈΠ»ΠΈ iPad/iPhone. Оно синхронизируСтся с вашим Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠΌ автоматичСски, ΠΈ Π²Ρ‹ смоТСтС Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ ΠΈ ΠΎΡ„Π»Π°ΠΉΠ½ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.
Ноутбуки ΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹
Π‘Π»ΡƒΡˆΠ°ΠΉΡ‚Π΅ Π°ΡƒΠ΄ΠΈΠΎΠΊΠ½ΠΈΠ³ΠΈ ΠΈΠ· Google Play Π² Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.
Устройства для чтСния ΠΊΠ½ΠΈΠ³
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ Π½Π° Ρ‚Π°ΠΊΠΎΠΌ устройствС для чтСния, ΠΊΠ°ΠΊ Kobo, скачайтС Ρ„Π°ΠΉΠ» ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π΅Π³ΠΎ Π½Π° устройство. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструкции ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎΠΌ Ρ†Π΅Π½Ρ‚Ρ€Π΅.