← До списку лабораторних по Python
Повний опис / сценарій лабораторної:
Meta: навчитися будувати розширювані системи де нові можливості додаються через плагіни. Krok 1. Створити каталог src/plugins з файлом __init__.py. Komandi: cd ~/python_lab1/src; mkdir -p plugins; touch plugins/__init__.py Krok 2. Створити кілька модулів плагінів наприклад echo.py і upper.py з функцією run. Krok 3. Написати менеджер плагінів app/plugins37.py який знаходить модулі у каталозі plugins. Poyasnennya: використай pathlib і importlib.import module. Krok 4. Завантажити кожен модуль і викликати його функцію run з тестовим рядком. Krok 5. Додати обробку помилок коли у модулі немає потрібних атрибутів. Krok 6. Зробити простий протокол плагінів, наприклад обовʼязковий атрибут name і функція run. Krok 7. Занотувати ризики динамічного імпорту з невідомих джерел. Krok 8. Продумати як підключати плагіни через entry point у пакеті замість каталогу. Krok 9. Зробити конфігураційний файл який визначає які плагіни активні. Krok 10. Mini zvit. Zavdannya: опиши приклад реальної системи де модель плагінів спрощує підтримку.