php структура иерархии классов Exceptions

162
08 февраля 2020, 11:40

У нас в проекте установлен композер и подключен autoload по psr-4.

Вот примерная структура:

classes/
    Import/
        CsvFl.php
        XmlFl.php
    Export/
        ClipBoard/
            Main.php
        FileDir/
            CsvFl.php
            XmlFl.php
    ...

Соответственно, полное название классов такое:

VendorName\Import\CsvFl
VendorName\Export\ClipBoard\Main
...

Хотел бы понять, как организовать структуру иерархии классов Исключений.

Т.е. Базовый класс BaseException у меня лежит в корне classes. А общий класс для Экспорта (ExportExcetion унаследованный от BaseException) в classes/Export и т.д.

В тоге получается следующее:

\VendorName\BaseException
\VendorName\Export\ExportException
\VendorName\Export\ClipBoard\ClipBoardException
\VendorName\Export\ClipBoard\ClipBoardMainException.php
...

Подскажите пожалуйста, это нормальная практика? Меня смущает, то что названия нейспейсов и общих исключений одинаково всегда начинается. В практике редко встречал. Или как нужно правильно организовать Иерархию?

READ ALSO
Отключить алерты с исключениями opencart

Отключить алерты с исключениями opencart

Имеется уже готовый магазин на opencart 3

137
Почему не работает второй метод в Controller

Почему не работает второй метод в Controller

Каждый раз по вызывании второго метода передается html без стилейМожете сказать это с чем связано

133
Оптимизировать подзапрос в MySQL

Оптимизировать подзапрос в MySQL

Какие могут быть способы оптимизировать вот такой вот подзапрос в left join?

149
Ошибка развертывания web-приложения Tomcat

Ошибка развертывания web-приложения Tomcat

Создается многомодульный проект maven, где два модуля имеют еще несколько дочерних модулей, - один из которых содержит пакеты и классы общие...

181