Привет! Вопрос по организации архитектуры. Допустим у меня есть класс, у которого есть поле type, есть экземпляры этого класса с разными значениями для этого поля. Нужно написать функцию взаимодействия между ними в зависимости от этого поля. Мои варианты: 1) Не делать поле type, а наследоваться от базового 2) Написать функцию, которая принимает два разных экземпляра и производит взаимодействие. Подскажите, как сделать лаконичнее и правильнее. Не хочется ради 1 функции делать кучу новых классов, которых придётся делать много.