简体   繁体   English

助手方法可以放在服务中吗?

[英]Can helpers methods be placed inside service?

I have a service that looks like:我有一个看起来像这样的服务:

 class UsersService { create() {...} update() {...} getRandomUsername() {...} isUserOld() {...} }

Should methods "getRandomUsername" and "isUserOld" be placed inside service?方法“getRandomUsername”和“isUserOld”应该放在服务中吗? Or they should be moved to some separate "UsersHelper" class and be called from there?或者他们应该被移动到一些单独的“UsersHelper”类并从那里被调用?

Service layer ind DDD (Domain Driven Design) architecture is supposed to be responsible for domain operations AND Business Logic.服务层和 DDD(领域驱动设计)架构应该负责领域操作和业务逻辑。 If you consider operations "getRandomUsername" and "isUserOld" Business Logic then it's fine to have them in the UserService service.如果您考虑操作“getRandomUsername”和“isUserOld”业务逻辑,那么将它们放在 UserService 服务中就可以了。 Especially if they really do operations on/with the "User" entity.特别是如果他们真的对“用户”实体进行操作。

Usually people try to avoid creating classes like Helpers or Managers, because what happens is that eventually everyone in your team will be putting all the "general" code inside of one GodHelper class.通常人们会尽量避免创建像 Helpers 或 Managers 这样的类,因为最终你团队中的每个人都会将所有“通用”代码放在一个 GodHelper 类中。 If you want to create several helper classes for every entity in your domain then you basically recreate a service layer.如果您想为域中的每个实体创建多个帮助程序类,那么您基本上需要重新创建一个服务层。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM