You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As a general rule, I'm for breaking things into small objects like the three objects we're talking about here, then combining them to get interfaces that might be more appropriate for some contexts.
This means that the two aggregators above don't preclude the other two proposals.
In fact, I would argue that they should be built using the fluent interface or straight code methods.
The nested aggregator nicely separates the three roles and their parameters.
The same parameter name (with different values) can be used in more than one role.
On the other hand, the flat aggregator allows one to share and align parameters, and only a few of the params are actually required,
allows for a sparse simple interface for most cases.