How Decorators Function
Andrew Knight (~andrew89) |
Have you ever seen those “@” tags on top of Python functions and classes? Those are called decorators. Decorators, in their simplest form, wrap functions around functions. That might sound confusing at first, but it’s actually pretty useful. A simple decorator could measure execution times, add startup steps, or automatically repeat calls. Decorators are one of Python’s niftiest language features, and they help programmers write DRY (Don’t Repeat Yourself) code.
In this talk, we’ll learn all about decorators:
- How they wrap functions
- How to write our own decorators
- How to do cool tricks with arguments, classes, and nesting
- How to use popular decorators
- How to decide when decorators are (and aren’t) the right solution
We’ll walk through plenty of example code together. We’ll also touch lightly on Functional Programming (FP) and Aspect-Oriented Programming (AOP) concepts to build a firm understanding about how decorators work. After this talk, you should be able to use decorators effectively in your own Python projects!
Attendees should have intermediate-level Python programming skills.
Andy Knight is the “Automation Panda” - an engineer, consultant, and international speaker who loves all things about software. His main passion is software testing and automation. He has designed and built robust test automation solutions for operating systems, service APIs, and Web apps with thousands of tests running continuously. He also coaches others in good development, testing, and BDD practices. Andy currently works full-time as the lead software engineer in test at PrecisionLender, a Q2 company. Read his tech blog at AutomationPanda.com, and follow him on Twitter at @AutomationPanda.