Comments 5
Я к тому, что толковые дельферы в курсе, в VCL'e можно подсмотреть много интересных trick'ов. А не толковые на хабре себя не показывают, боятся что тут не любят «богомерзкий дельфе».
Есть же поисковики. Я, к примеру, очень часто в результатах поиска ссылки на хабр видывал.

А не толковые на хабре себя не показывают, боятся что тут не любят «богомерзкий дельфе».

Да это всё условности, как мне кажется.
Поясните в чем была проблема?
Я понял как — было простое односложное свойство, а вы его заменили на сложное — список згачений.
Для совместимости со старыми дампами необходимо чтобы читался и старый и новый формат.
Если дамп старый, то читается одна строка, если новый то много.

Меня название статьи вводит в заблуждение, не соответсвует содержанию.
В конце концов от published свойства вы не избавились — оно в вашем коде есть!

Тут проблема скорее в чтении данных и обеспечении обратной совместимости.
в принципе, поднят актуальный вопрос ;)
но бывают случаи несколько запущеннее — например, у нас сохранение/загрузка результатов работы программы реализована сериализацией сложного класса с подклассами и вложенностью, скажем, 3-4 уровня… Потом пришло новое ТЗ и после всех доработок и рефракторинга часть свойств сменили тип (некоторые, как в топике — на списки), часть свойств, в том числе, и объектные вообще выкинули, а часть добавили…
И тут сюрприз — надо загружать старые результаты ;) попробовав нечто вроде описанного варианта, выбрал более брутальный ;)
Был сделан парсер dfm формата (сериализация идет в текстовом виде) со всеми возможными преобразованиями в более новый формат. Преобразования идут от самого старого формата к более новому и при очередных изменения требуется только дописать 1-2 метода. В результате, несмотря на неоднократную смену формата сохранения, программа дает открывать пользователям данные даже первой версии с сохранением всего, что можно перенести.

P.S. согласен с r3code — спорный заголовок — «проблема скорее в чтении данных и обеспечении обратной совместимости»
Only those users with full accounts are able to leave comments. Log in, please.