Что назвать класс, который сериализует и де-сериализует как

В моем проекте я создаю класс, который будет выполнять сериализацию и десериализацию. что назвать этот класс. До сих пор имя класса - Serializer, но это вызывает десериализацию обоих. Для примера serialize.deserilize(..) кажется таким странным. Я также просматриваю и обнаружил, что есть термин SerDes SerDes, но кажется странным именем. Может ли кто-нибудь предложить лучшее имя?

Вот класс, для которого мне нужно решение

class EntityTableFilterSerializationHelper{

public SerializeData serialize(EntityTableFilter filter){
///implemenation

}

public EntityTableFilter deSerialize(SerializeData serialize){
//implementation

}

}

Ответ 1

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

Ответ 2

Я предлагаю использовать [Thing]Formatter, потому что ваш объект переформатирует информацию для различных сценариев, то есть deserialize и serialize.

Как показывает ваша интуиция, [Thing]Serializer описывает только одно из этих поведений, и мы могли бы ожидать, что также будет [Thing]Deserializer. Но, если я ищу объект с особым намерением сериализации, я мог бы упустить что-то вроде [Thing]Formatter.

Итак, нет ни одного истинного ответа на этот вопрос, только плюсы и минусы к ним подходят.

Ответ 3

Я искал подобное имя, а затем придумал Biserializer или Biserialization.

Ответ 4

Я предполагаю, что EntityTableFilter - это ваш собственный класс, и в этом случае вам следует просто добавить в класс методы serialize и deserialize. Однако, если этот класс закрыт для вас, вы можете создать класс Utils/Utilities или назвать его EntityTableFilterSerializer. Тем не менее я должен был бы сделать класс и методы static, нет оснований объявлять EntityTableFilterSerializationHelper для использования методов, которые он просил.

В java соглашение должно содержать имена ваших методов в camelCase, а так как сериализовать и десериализовать каждое слово, они должны быть полностью строчными.

class EntityTableFilterSerializationHelper{

    public SerializeData serialize(EntityTableFilter filter){
        //implemenation
    }

    public EntityTableFilter deserialize(SerializeData serialize){
        //implementation
    }
}