Шаблон для абстрагирования деталей сериализации \ десериализации от классов данных

В моем текущем PHP-проекте у меня есть несколько классов, которые являются чистыми классами данных, подобно тому, что называется POCO в мире C # (сейчас я опускаю getters \ setters):

class MyEntity {
public $id;
public $name;
}

Мне нужно сериализовать \ десериализовать такие сущности в разных форматах (например, в / из JSON и XML) и не допускать сериализации отдельно от самих классов.

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

0

Решение

Звучит как шаблон стратегии мне. Определите общий интерфейс и реализуйте различные стратегии сериализации. Вызывать на основе контекста.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]