(no subject)
Jan. 27th, 2005 09:13 amУстроил цирк с сериализацией в .NET.
Имеется пакет для создания диаграмм. В нём есть несколько демонстрационных программ, которые на нём построены. Одна из них, самая навороченная (далее Demo1), создаёт многие продвинутые типы узлов графов, с особым поведением, задаваемым виртуальными методами. Код методов находится, есссно, в теле этой программы.
Ещё одна демка, самая простая (далее MinimalApp), создаёт только два простейших узла и даёт стандартную функциональность пакета (соединение узлов мышкой и т.д.).
Пакет поддерживает сериализацию .NET, из чего следует поддержка любого драг-н-дропа и копи-пейста (в дальнейшем ДДКП) узлов и фрагментов графов в виде копирования и вставки в любой программе, которая на нём основана.
Теперь начинается цирк. Запускаем MinimalApp — ДДКП работает. Запускаем ещё один MinimalApp - ДДКП работает из одной аппликации в другую. Перетаскиваем диаграммы мышкой туда-сюда - красота. Но дальше...
Запускаем навороченную демку и делаем драг-н-дроп в простую программу. РАБОТАЕТ!! Поведение узлов, заданное в Demo1, сохраняется в MinimalApp! Закрываем Demo1 - поведение сохраняется!!
Получается, выполнимый код сериализуется вместе с полями класса и переселяется в новую программу?!
А вот объекты со встроенными картинками копируются лишь частично, картинки не копируются.
Наверно, сериализация в Джаве позволяет то же самое...
Имеется пакет для создания диаграмм. В нём есть несколько демонстрационных программ, которые на нём построены. Одна из них, самая навороченная (далее Demo1), создаёт многие продвинутые типы узлов графов, с особым поведением, задаваемым виртуальными методами. Код методов находится, есссно, в теле этой программы.
Ещё одна демка, самая простая (далее MinimalApp), создаёт только два простейших узла и даёт стандартную функциональность пакета (соединение узлов мышкой и т.д.).
Пакет поддерживает сериализацию .NET, из чего следует поддержка любого драг-н-дропа и копи-пейста (в дальнейшем ДДКП) узлов и фрагментов графов в виде копирования и вставки в любой программе, которая на нём основана.
Теперь начинается цирк. Запускаем MinimalApp — ДДКП работает. Запускаем ещё один MinimalApp - ДДКП работает из одной аппликации в другую. Перетаскиваем диаграммы мышкой туда-сюда - красота. Но дальше...
Запускаем навороченную демку и делаем драг-н-дроп в простую программу. РАБОТАЕТ!! Поведение узлов, заданное в Demo1, сохраняется в MinimalApp! Закрываем Demo1 - поведение сохраняется!!
Получается, выполнимый код сериализуется вместе с полями класса и переселяется в новую программу?!
А вот объекты со встроенными картинками копируются лишь частично, картинки не копируются.
Наверно, сериализация в Джаве позволяет то же самое...
no subject
Date: 2005-01-27 01:12 am (UTC)