Преобразование объектной модели C ++? - PullRequest
0 голосов
/ 28 февраля 2012

У меня есть 2 системы с двумя связанными, но немного отличающимися объектными моделями (одна модель имеет класс для договорных отношений между партнерами, другая использует другое, но производное понятие (и другой класс)). Мне нужно написать «маппер», который перемещается по первой модели и создает экземпляры второй модели (есть контейнеры, классы ...). Есть ли инструмент / библиотека (желательно декларативная?), Которую я мог бы использовать для генерации кода сопоставления?

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

Могут быть более простые способы, но одним из вариантов является использование Boost :: Serialization, который позволяет очень компактно (если не строго декларативно) указывать формат сериализации для каждого объекта.

Тогда вы можете сериализоватьодин набор объектов в XML и использовать XSLT для преобразования их в формат другого набора объектов.Затем вы десериализуете другой набор объектов.

Если вы правильно указали сериализацию двух наборов объектов, возможно, можно пропустить весь этап преобразования в XML / XSLT.

1 голос
/ 28 февраля 2012

Нет ни одного, о котором я знаю.Обычно вы пишете небольшие модули-оболочки, используя шаблон адаптера .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...