Models repository refactored
Вариант рефакторинга репозитория моделей:
- Структура вынесена в json
- Вместо иерархической структуры - каждой модели или их группе присваиваются теги. По ним можно делать запросы, например: получить все линейные модели как repo.models_with_tag(tags=['linear'])
- Соответствие между моделью и стратегий вычисления задается в репозитории (можно будет убрать громоздкие словари из models).
- Введен набор меток, позволяющих задавать ограничения на расположение моделей в структуре цепочки.
- Убрал чрезмерно разросшийся ModelsTypesEnum и заменил его на строковое название модели из репозитоия.
? Возможно есть смысл сделать глобальный репозиторий-синглтон? Чтобы можно было его динамически расширять и модифицировать (например, добавлять новые атомизированные модели).