- Suggested Duration
- 1 day
- Participants
- Class of 12 or less
Python Decorators Demystified
Learn functional programming concepts to build libraries and frameworks with beautiful APIs.
-
Anand Chitipothu
@anandology
Trainer
Please write to us at hello@pipal.in if you would like this course to be conducted at your organization.
Decorators are one of the elegant features of the Python programming language. They are heavily used in modern libraries and frameworks to create elegant APIs.
This workshop introduces Python decorators starting from the functional programming concepts to writing practical decorators using lot of examples and exercises.
At the end of the workshop, you’ll be able to:
- understand how decorators work
- appreciate how decorators are applied in the libraries and frameworks that you use
- build beautiful abstractions using decorators
- improve code readability and reusability using techniques learnt
Audience
This course is targeted at experienced Python programmers who would like to learn advanced features of the Python programming language for building libraries and frameworks with beautiful APIs.
This course assumes a working knowledge of Python programming. It is not recommended for programmers who are new to Python.
Pre-requisites
- Good working knowledge of Python programming language
Course Outline
- Introduction to Functions in Python
- Functions that take functions as arguments
- Functions returning functions
- Introduction to Decorators
- Decorators that take arguments
- Decorator Patterns
- Building a simple web framework using decorators
Testimonials
Duration & Format
The suggested duration of the course is 1 day.
This is an interactive course and it is suggested to limit the number of participants to 12 or less for it to be effective.
All the topics covered in the class will recorded as Jupyter notebook and shared with all the participants at the end of the each day of the course.
Trainer
Anand Chitipothu
Anand has been crafting beautiful software since two decades. He has strong product development experience with deep insights in system design, scalability, and developer experience. He has co-authored web.py, a micro web framework in Python, built Open Library at the Internet Archive, created a machine learning platform at Rorodata, trained hundreds of engineers through his deep-dive courses.