Обновить
5
0
Артём@dukeartem

Пользователь

Отправить сообщение

В повседневной разработке 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"]
        .....

Данное произведение не читал, но по описанию вам возможно понравится так же "Тело. Руководство пользователя" Брайсон Билл.

xcom-shop.ru

Произошла ошибка, пожалуйста, попробуйте перезагрузить страницу.

И так будет с каждым, кто не согласовывает маркетинг и эксплуатацию. А за обзор, спасибо.

Такая мощная защита и от ракет и от папараций, вспоминается анекдот про «не уловимого Джо»
Извиняюсь, возможно и не 150 рублей, но не меньше 60 точно. :) Тут дело не в экономии средств, а просто, что есть такой трюк.

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность