I would implement as a Protocol just because of one reason: you can extend the serialization to user defined types, for example.
I would implement as a Protocol just because of one reason: you can extend the serialization to user defined types, for example.