Somewhere between API resources, queue workers, repositories, clients and serializers there is a class of … classes/modules that does the needful. Gun-to-my-head, I would call them “services” but I’m looking for a less overloaded term. Maybe capabilities? Controllers? Pick a term from the business domain? What do you call them?

  • HamsterRage@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    1 month ago

    In respect to sitting above the API layer and turning DTO’s to/from Domain Object’s, I’d call them “Brokers”.

    • vvv@programming.devOP
      link
      fedilink
      arrow-up
      0
      ·
      1 month ago

      that’s a good call actually. I got pretty hung up on domain objects being mostly data classes, but one approach is to have them perform business logic themselves.

  • BehindTheBarrier@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 month ago

    It’s not that universal, but we have named a few things “Engines”, for example Balancing Engine. We also use services, but they are actually independent programs that performs jobs. Engine are used in other places, such as the ViewModels, or in the services.

    We put them in the DomainModel project which most things reference though. That’s were most basic functionality and shared resources end up if they are used across Client/Service/Backend projects. So Domain / DomainModel might be a thing to use as well, if you want a specific namespace for that kind of use.

  • folkrav@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 month ago

    We call that business logic layer “services” at work too, for lack of a better word, but I’ll be watching over this thread for better ideas…