В повседневной разработке 99% кода не будет даже затрагивать те сценарии использования, в которых были бы полезны метаклассы
через метаклассы отлично решается задача, когда нужен singletone паттерн:
Например, хотим, что бы из любого места приложения мы могли получить доступ к одному и тому же коннекту к базе и создавать внутри только сессии из пула:
class MetaSingleton(type):
_instances = {}
def __call__(cls, *args, **kwargs):
if cls not in cls._instances:
cls._instances[cls] = super(MetaSingleton, cls).__call__(*args, **kwargs)
return cls._instances[cls]
class DatabaseSessionManager(metaclass=MetaSingleton):
def init(self, db_settings: dict) -> None:
self.database_url = db_settings["database_url"]
.....
через метаклассы отлично решается задача, когда нужен singletone паттерн:
Например, хотим, что бы из любого места приложения мы могли получить доступ к одному и тому же коннекту к базе и создавать внутри только сессии из пула:
Данное произведение не читал, но по описанию вам возможно понравится так же "Тело. Руководство пользователя" Брайсон Билл.
xcom-shop.ru
И так будет с каждым, кто не согласовывает маркетинг и эксплуатацию. А за обзор, спасибо.