MyPage is a personalized page based on your interests.The page is customized to help you to find content that matters you the most.

I'm not curious

Understanding Metaprogramming

Course Summary

Are you ready to embrace metaprogramming to make a better application in less time? Learn about templates, metadata, process, handcrafting, and producing high quality output. Then apply these principles to any language on any platform. If you're intereste

  • +

    Course Syllabus

    ● What is Metaprogramming?
        ◦ Introduction
        ◦ Defining Metaprogramming
        ◦ Sneak Peek at Course
        ◦ What is Metaprogramming?
        ◦ A Taxonomy for Metaprogramming
        ◦ Five Principles for Metaprogramming
        ◦ Summary
    ● Metaprogramming Output is in Your Control
        ◦ Introduction
        ◦ Direct Output, T4, and Roslyn Templates
        ◦ Good Candidates for Metaprogramming
        ◦ Aspect Oriented Programming (AOP)
        ◦ Dynamic Metaprogramming in Ruby
        ◦ Debugging Metaprogramming
        ◦ Summary
    ● Metadata is Distinct, Flexible, and Isolated
        ◦ Introduction
        ◦ What is Metadata and Where Does it Come From?
        ◦ Code First Metadata
        ◦ Metadata Sources
        ◦ What Makes Good Metadata?
        ◦ Summary
    ● Metaprogramming is the Easiest Way to Do the Job
        ◦ Introduction
        ◦ What Does Easiest Mean?
        ◦ Metaprogramming at Compile Time
        ◦ Metaprogramming in the Editor
        ◦ Demo: T4 and Custom Tools
        ◦ Runtime Metaprogramming
        ◦ Summary
    ● Human Crafted Code is Sacred
        ◦ Introduction
        ◦ What is Handcrafted Code?
        ◦ Nightmare Scenario
        ◦ Protecting Code
        ◦ Incorporating Customization
        ◦ Strategy Pattern
        ◦ Dependency Injection
        ◦ Inheritance
        ◦ Partial Classes and Partial Methods
        ◦ Generative Weaving
        ◦ Summary
    ● The Metaprogramming Result is Highest Quality
        ◦ Introduction
        ◦ Metaprogramming Pitfalls
        ◦ Metaprogramming Benefits
        ◦ Template Governance
        ◦ Source Control
        ◦ Summary
    ● Domain Specific Languages (DSL)
        ◦ Introduction
        ◦ Types of DSL
        ◦ Visual DSL
        ◦ Embedded DSL
        ◦ Summary
    ● The .NET Compiler Platform - Roslyn
        ◦ Introduction
        ◦ What is Roslyn or the .NET Compiler Platform?
        ◦ Roslyn Visualizer
        ◦ Roslyn Quoter
        ◦ Enhanced Source View
        ◦ Roslyn Concepts
        ◦ What can we Do?
        ◦ Expansion First Metaprogramming
        ◦ Easy Code First Metadata
        ◦ New Templates
        ◦ Summary


Course Fee:
USD 29

Course Type:


Course Status:



1 - 4 hours / week

Attended this course?

Back to Top

Awards & Accolades for MyTechLogy
Winner of
Top 100 Asia
Finalist at SiTF Awards 2014 under the category Best Social & Community Product
Finalist at HR Vendor of the Year 2015 Awards under the category Best Learning Management System
Finalist at HR Vendor of the Year 2015 Awards under the category Best Talent Management Software
Hidden Image Url

Back to Top