Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor to Externally Relevant Names / Domain Driven Design #2

Open
malcyL opened this issue Sep 3, 2018 · 1 comment
Open

Refactor to Externally Relevant Names / Domain Driven Design #2

malcyL opened this issue Sep 3, 2018 · 1 comment
Milestone

Comments

@malcyL
Copy link
Contributor

malcyL commented Sep 3, 2018

Version 0.1.0 of this library brought together four public client libraries into one: persona, echo, critic, and babel. Version 0.1.0 of this library brought them together without any significant change to the code from the existing individual libraries.

Moving forward in version 1.0.0, we should refactor away from internal Talis project names and instead use externally relevant names, for example, ListReviews and Files. We may also want to refactor to a more domain driven design rather than the current service driven design.

@malcyL malcyL added this to the 1.0.0 milestone Sep 7, 2018
@junglebarry
Copy link
Contributor

junglebarry commented Jun 11, 2020

A little context from conversations:

  • the service-driven design is that the structure of the library code reflects the structure of the services, which we understand internally, but may have little meaning to customers.

  • moving to a domain-driven design means couching the library in terms of common tasks that are meaningful to customers and end-users (which may actually span multiple "services" in the architecture).

It's fair to say that the aims of the library may have changed, and we may be fine with service-driven if they're only used internally. We now have customer-facing APIs that are more domain-driven by their very nature, and domain-driven works well for the application APIs.

We should only consider making the move to domain-driven if there are compelling use-cases for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants