Чтобы лучше организовать мой код в PHP-проекте ( простая CMS), я рассматриваю возможность перемещения большинства моих системных функций в абстрактный класс в качестве статических членов.Помимо организационной и синтаксической выгоды от этого, единственной другой причиной было бы сохранение ссылок на объекты источника данных и т. Д., А также статических элементов.
Правила нарушаются при необходимости, но я хочуукрепить мое понимание лучших (читай best ) шаблонов и практик.
Я полагаю, что этот вопрос является открытым, но мне было интересно, есть ли у кого-нибудь предложения или, возможно, можно было бы предложить некоторые материалы для чтенияпоэтому я мог изучить свои варианты и то, что можно было бы считать «лучшими практиками».
Примером этого в моем коде могут быть функции для управления разрешениями.Для любого данного запроса может потребоваться проверка разрешений, чтобы гарантировать, что запрашивающий пользователь имеет достаточные привилегии для операции.Таким образом, такие функции, как getAllPermissions()
, getGroupPermissions()
, addGroupPermissions()
и т. Д., Плавают вокруг.Должны ли они быть инкапсулированы в класс PermissionsManager
, необходимый для создания экземпляра, и если да, то где мне остановиться?Я на правильном пути, перемещая их в псевдоглобальное пространство в абстрактном классе как статические методы?Должен ли я просто оставить декларации в глобальном масштабе?Где заканчиваются соответствующие обязанности класса и начинаются захваты «божьего класса»?Какие цветные носки я должен носить?
Я просто не могу обернуться вокруг этого, и это замедляет мою производительность.Я не хочу больше бездельничать в моделировании, потому что, несмотря на очевидные преимущества, я, конечно, уничтожил несколько деревьев, набросав схемы взаимодействия объектов.И моя корзина для мусора полна.