Russian Qt Forum
Ноябрь 23, 2024, 14:39 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 ... 6 7 [8]   Вниз
  Печать  
Автор Тема: Сериализация (как сделать поудобнее)  (Прочитано 48083 раз)
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #105 : Февраль 08, 2013, 21:57 »

А насколько плохо в качестве такого идентификатора использовать текущий адрес объекта в памяти? (Допустим, что памяти хватает и все нужные объекты там уже находятся).
Да что угодно можно использовать, главное что этот идентификатор уникально определял объект.
Это может быть тот же порядковый номер в коллекции.

Есть список указателей на объекты текстур и есть куча объектов полигонов, в которых есть указатели на эти объекты текстуры.
Мы сохраняем объекты текстуры в том же порядке, а при сохранении полигонов, вместо указателя сохраняем порядковый номер текстуры.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #106 : Февраль 09, 2013, 11:12 »

Есть список указателей на объекты текстур и есть куча объектов полигонов, в которых есть указатели на эти объекты текстуры.
Мы сохраняем объекты текстуры в том же порядке, а при сохранении полигонов, вместо указателя сохраняем порядковый номер текстуры.
Ну все-таки указатель на текстуру хранят для объекта, а не для каждого полигона (дороговато выйдет, полигонов много  Улыбающийся). Да, этот способ часто применяется, но

- нужно хранить/отслеживать коллекции

- при де-сериализации я не могу восстановить указатель немедленно (хз текстура загружена или нет). Нужна фаза "восстановления ссылок/связок"

- загружая текстуру (объект на который ссылаются) я не могу от нее немедленно избавиться (напр если файл картинки отсутствует). До того как разрешены ссылки я вынужден сидеть с невалидным объектом текстуры, что довольно мерзко

- возникают трудности с сериализацией части данных. Хотя эти трудности объективны - от этого не легче

В общем, типовая ситуевина когда стройная архитектура классов превращается в море латок, а умничание быстро заканчивается  Улыбающийся
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #107 : Февраль 09, 2013, 11:16 »

В общем, типовая ситуевина когда стройная архитектура классов превращается в море латок, а умничание быстро заканчивается  Улыбающийся
Мне жаль ваших заказчиков. Улыбающийся
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #108 : Февраль 09, 2013, 11:21 »

Мне жаль ваших заказчиков. Улыбающийся
Спасибо за сочувствие - но я просто рассказал что ожидает на пути который Вы предложили  Улыбающийся
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #109 : Февраль 09, 2013, 14:44 »

Спасибо за сочувствие - но я просто рассказал что ожидает на пути который Вы предложили  Улыбающийся
Это если вы его будете реализовывать... И я думаю это еще далеко не все проблемы. Подмигивающий

Но я пожалел ваших заказчиков по другому поводу: за ваше умение набить себе цену на решение обычных технических вопросов (т.е. за свою непосредственную работу). Улыбающийся

Давайте углубимся в детали.

- нужно хранить/отслеживать коллекции
Это бесспорно хит. Улыбающийся
Так же, можно просить заказчика увеличить стоимость проекта на треть в связи с тем, что вам придется хранить и отслеживать все объекты системы, и самое главное не забывать их удалять при завершении ее работы.

- при де-сериализации я не могу восстановить указатель немедленно (хз текстура загружена или нет). Нужна фаза "восстановления ссылок/связок"
А нам для восстановления указателя вообще не нужны данные картинки, поэтому никаких "фаз восстановления ссылок/связей" здесь не нужно. (Заказчик бы плакал от такой красивой фразы). Улыбающийся
Нужно разделить класс текстур и класс картинок. Объект текстуры можно создать сейчас, а данные картинки загрузить через десять с половиной секунд. Или вообще не загружать, ведь они нужны только для визуализации. К тому же текстура может иметь возможность хранить изображения разных размеров.
Поэтому, идея текстура == картинка изначально, эммм, недальновидная. Улыбающийся

- загружая текстуру (объект на который ссылаются) я не могу от нее немедленно избавиться (напр если файл картинки отсутствует). До того как разрешены ссылки я вынужден сидеть с невалидным объектом текстуры, что довольно мерзко
Не могу ничего пояснить, потому что не могу представить что вы имеете ввиду.

- возникают трудности с сериализацией части данных. Хотя эти трудности объективны - от этого не легче
Какие трудности и почему они объективные?

В общем, типовая ситуевина когда стройная архитектура классов превращается в море латок, а умничание быстро заканчивается
А это действительно очень грустно, если у вас каждая архитектура превращается в море латок, так можно разувериться в профессии. Улыбающийся
 
« Последнее редактирование: Февраль 09, 2013, 14:46 от Old » Записан
Страниц: 1 ... 6 7 [8]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.17 секунд. Запросов: 23.