Skip to main content
1 of 3
Doc Brown
  • 214k
  • 34
  • 394
  • 603

If you need some serialization code which is specific for certain Handler implementations, my first choice would be to make it part of the type itself and hence put into the same module where the specific Handler lives, so either core or extension.

If the code is separable from the Handler type, and you have the impression core and extension become so large it gets confusing, you may introduce two new modules coreSerializers and extensionSerializers.

Generic serialization code like HandlerSerializer<T: Handler>, however, can be placed in a neutral location, since it does not create a dependency on specific handler implementation. It could by either placed in persistence or in some new module serialization, whatever you prefer.

Doc Brown
  • 214k
  • 34
  • 394
  • 603