"Pluggable Architecture" by: Aly Sivji
Applications and libraries with pluggable architecture allow developers to customize software without having to modify existing code. We can use plugins to modify user interfaces, create new workflows, and interface with legacy systems. Designing a plugin is often difficult - documentation is sparse, outdated, or non-existent. You end up diving into a unfamiliar codebase to figure out what to do.
This talk examines Pluggable Architecture by creating a custom plugin system: we will design an interface, think about where to hook in custom behavior, and discuss testing techniques. Understanding these principles will enable us to write custom plugins for third-party packages. Extend the functionality of your favourite library without touching existing code!
Recorded at the 2020 Python Web Conference (https://2020.pythonwebconf.com)