Affects Version/s: None
Fix Version/s: 0.10.0.0
Right now users must provide two separate classes for serializers and deserializers, respectively. This means the current API functions have at least 2 * numberOfTypes parameters.
Example (current, bad): "foo(..., longSerializer, longDeserializer)".
Because the serde aspect of the API is already one of the biggest UX issues, we should unify the serde functionality into a single serde class, i.e. one class that provides both serialization and deserialization functionality. This will reduce the number of required serde parameters in the API by 50%.
Example (suggested, better): "foo(..., longSerializerDeserializer)".
- Note: This parameter name is horrible and only used to highlight the difference to the "current" example above.
We also want to 1) add a pairing function for each operator that does not require serialization and 2) add a default serde in the configs to make these not required configs.