【发布时间】:2015-01-11 11:54:52
【问题描述】:
在重构我的 User 类时,我创建了一个新的 UserService 类。经过一番工作,我决定将所有与用户相关的操作移到一个新的微服务中,该微服务位于“用户”命名空间下。
我的第一步是使用 User::UserService,这似乎有点多余,但不知何故,User::Service 听起来也很可疑或普通的懒惰打字。 p>
这种情况下流行的 Ruby gem 的通用命名约定是什么
【问题讨论】:
在重构我的 User 类时,我创建了一个新的 UserService 类。经过一番工作,我决定将所有与用户相关的操作移到一个新的微服务中,该微服务位于“用户”命名空间下。
我的第一步是使用 User::UserService,这似乎有点多余,但不知何故,User::Service 听起来也很可疑或普通的懒惰打字。 p>
这种情况下流行的 Ruby gem 的通用命名约定是什么
【问题讨论】:
经过一些试验,我目前的选择是看似多余的 User::UserService
原因是 UserService 是重构的第一个自然举措,过早引入 User:: 命名空间可能是过度设计的症状。
随着代码的成熟,在任何地方将 UserService 重命名为 User::Service 是不必要的痛苦,特别是因为可以在全局命名空间上创建别名。
在 User 命名空间内仅使用 Service 有点模棱两可,并且必须从其他命名空间键入冗长的冗余名称可能是关于模块耦合的警告。
【讨论】: