Какой паттерн применить в Ангуляре?

У меня етсть сервис TreeService, который управляет деревом. В нем есть метод инициализации дерева. В котором вызывается обход дерева и выборки определенных значений по заданной логике. Затем вызывается метод отрисовки.

Проблема в том, что я хочу переиспользовать сервис, при этом не использовать часть функционала, например во входной точке не вызывать указанные выще методы, а выполнить свою логику.

При этом текущий сервис содержит общие методы для любого дерева, отметить лист, раскрыть, закрыть дерево и тд.

Как с этим быть в Ангуляре?
В голову приходить создать абстрактный класс-сервис:

class abstract TreeCommon {
   // Common methods and abstract methods for overwriing.
}


Затем уже создавать отдельные сервисы со своим фунционалом:

class TreeMap extends TreeCommon {
}

class TreeLayer extends TreeCommon {
}


Второй вариант сразу унаследоваться от текущей реализации сервиса, что не очень хорошо, потому как половину функицонала мне не нужно. Только основной по работе с деревом.
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
XPOWER Одесса
от 3 000 до 5 500 $