По сути, это вопрос о том, как представлять дерево.Там не так много хорошего консенсуса по этому вопросу;это сложная проблема.Конечно, подход вложенных сеток данных действителен, но вы ударили по голове, когда описали его как потенциально загроможденный.
В некоторой степени ответ на этот вопрос связан с тем, сколько информацииоб остальном дереве, которое вам нужно, когда вы взаимодействуете на заданном уровне.Вам действительно нужно знать о корне дерева и обо всех дочерних элементах корня, когда вы работаете с листьями на два уровня ниже?Конечно, есть случаи использования, когда вы это делаете, и в этих случаях имеет смысл выбрать репрезентативную структуру, которая позволит вам видеть всех дочерних элементов (как в подходе с вложенными сетками).В других случаях вам не нужно много знать, если есть какая-либо информация о более высоких уровнях в дереве;в таких ситуациях имеет смысл выделить представление более низких данных в отдельную область представления (стр.).
Существует множество способов решения этой проблемы.Вы видели прези ?Это очень впечатляет, и часть того, что делает его впечатляющим, заключается в том, что есть ощущение «места» для данных;он использует собственный пространственный смысл человека, чтобы помочь разобраться в сложных данных и иерархиях;масштабирование действительно фиксирует в этом смысле пространственную ориентацию (иногда дезориентацию).
С точки зрения вашего фактического вопроса;подумайте о ОТДЫХЕ, и особенно об ожидании HATEOAS.По сути, рассмотрите возможность моделирования ваших данных независимо от представления, а затем позвольте представлению быть относительно тонким слоем, в отличие от плотной модели представления.Могут быть некоторые вещи, которые требуют настройки, но самое главное, если общая модель представления нуждается в настройке, вы можете вернуться и изменить ее относительно легко.Кроме того, модель данных имеет тенденцию подразумевать определенную структуру, которая имеет смысл с данным набором данных;по сути, это вопрос определения структуры ваших данных и поиска модели дисплея, которая наиболее подходит для этого.Не передавая нагрузку на лодку строгой модели представления, вы получаете возможность изменять при необходимости.Гибкий дизайн пользовательского интерфейса, примерно.
Этот материал очень субъективен и действительно зависит от вашей организации и ваших потребностей;нет единого хорошего ответа для каждого решения.Удачи;ты хотя бы задаешь правильные вопросы!