У меня есть объект Type Parent, который имеет дочерние элементы типа Parent и так далее. , какой тип данных лучше всего подходит для хранения данных такого рода. Добавление объектов является динамическим, так как пользователь добавляет объекты в пользовательский интерфейс.Хранение вложенных объектов
ответ
Поскольку имя Parent
семантически вводит в заблуждение, я заменить его на Node
, перефразировать ваш вопрос как код,
class Node : IEnumerable<Node> { }
Теперь вы говорите, что вы хотите, чтобы поддержать динамическое изменение. Если будет немного изменить, или вообще оптовые изменения, которые я бы с
class Node : List<Node> { }
но если там будет много небольших изменений,
class Node : LinkedList<Node> { }
может оказаться более подходящим.
Если вы хотите поддерживать множество небольших изменений в своем дереве, я бы не использовал xml в качестве хранилища резервных копий. Хотя это, по-видимому, имеет смысл и прекрасно работает для деревьев с разумным размером, когда дерево велико, и вы добавляете или удаляете данные около начала документа, вы получаете заметный эффект Shlemiel The Painter по мере выделения памяти (de) и смещения хвоста , Если вы не используете реализацию XML-документа, которая позволяет избежать этого.
Преимущество использования XML - бесплатная сериализация, но XML не является наиболее удобным способом хранения ваших личных данных. Существуют более быстрые и меньшие альтернативы.
- 1. Хранение вложенных объектов javascript в redis - NodeJS
- 2. Хранение вложенных списков
- 3. Хранение вложенных объектов с использованием хранилища кодовых имен
- 4. Хранение вложенных массивов в cookie
- 5. Хранение вложенных JSON с Cassandra
- 6. Обновление объектов вложенных объектов EntityFramework
- 7. Хранение объектов в mysql
- 8. Хранение внутренних объектов Android
- 9. Хранение/сериализация списка объектов
- 10. Хранение объектов в массиве
- 11. ios хранение пользовательских объектов
- 12. Хранение динамически объектов QML
- 13. Полиморфизм и хранение объектов
- 14. Хранение объектов на localStorage
- 15. Хранение объектов java онлайн
- 16. Хранение большого объема объектов
- 17. Хранение объектов поверхности пигама
- 18. Хранение списка объектов
- 19. хранение объектов в hazelcast
- 20. Хранение объектов в векторе
- 21. Хранение вложенных весенних фасолей в HashMap
- 22. Сериализация не вложенных объектов как вложенных
- 23. RESTful переназначения вложенных объектов
- 24. Деструктурирование вложенных объектов
- 25. Разбор вложенных объектов JSON
- 26. HQL - выбор вложенных объектов
- 27. Сериализация вложенных объектов Scala
- 28. CoreData выборка вложенных объектов
- 29. Создание вложенных объектов динамически
- 30. Запрос вложенных объектов