Я хотел бы иметь составную структуру, которая построена из JSON. Каждый элемент может иметь только один тип дочерних элементов, поэтому группа может содержать только группы или только листья. Затем на основе этого дерева я хочу нарисовать графический компонент пользовательского интерфейса, который будет отображаться по-разному и выполнять различные действия в зависимости от его типа (группа или лист).
Вопрос в том, как определить, что визуализировать и каких слушателей прикрепить к рисунку. Дерево - это всего лишь модель, поэтому оно не должно содержать методов для построения графика или управления.
Это хорошая или плохая практика, чтобы проверить, является ли она экземпляром чего-либо, и привести компонент к правильному типу, а затем выполнить правильную настройку?
Как насчет наличия enum и getter для его определения?
Я знаю ответы, которые будут работать, но я хочу услышать о хороших практиках.