类计数指标的含义

时间:2017-04-26 10:39:40

标签: class architecture

我们正在使用Ruby on Rails开展更大的项目。您可能知道,Rails使用MVC模式,并且通常为Domain对象强制执行以下类类型:

  • 控制器(+助手)
  • 模型
  • 观点(例如erb)
  • 串行器
  • 邮件程序

我们 - 像许多其他团队一样 - 经历过这对大型,长期运行的项目不可行。

所以在我们当前的项目中,我们添加了一些层,所以我们通常有

  • 控制器(+助手)
  • 策略(每个控制器的访问控制)
  • 演示者(a.k.a ViewModel)
  • 表单(包含HTML表单中可用的所有属性)
  • 浏览
  • 模型
  • 查询(静态ActiveRecord查询)
  • 串行器
  • 邮件程序
  • 服务(从控制器中提取业务代码的域服务)

它更易于测试,可维护且易于理解。 但是,我们的老板不同意“这些课程太多了”。

由于他通常是一位精通建筑师(做咨询),所以我不想简单地拒绝这种回应。然而,他作为活跃的Java开发人员的时间已经消失,他经常以他改善的“直觉”来解释这些句子。

当然,有一些指标可以计算类 - 但是有一种通用方法可以对“每个域对象的类别”或“每个业务案例类别”进行分类,这可以用于参数吗?

1 个答案:

答案 0 :(得分:0)

我从来没有听说过限制每个项目,领域或其他任何类别的规则或最佳实践。一个人应该创造他真正需要的课程。这里的关键词是“真的”,因为开发人员往往会使事情复杂化并创建不必要的类,层甚至层。如果没有关于您项目的详细信息,我建议您执行以下操作:

  1. 请你的老板详细说明“太多课程”一词。问他的担忧。如果他是一名优秀的建筑师和团队成员,他理解他对教练人的责任。
  2. 确保你清楚地向他解释为什么你需要这些课程。提供示例。
  3. 如果你的老板很顽固,那么他作为开发人员的最佳日子已经消失了,他只是想展示他的意义,提醒他他对成功项目的责任。例如,告诉他他是一名建筑师和做出最终决定的人,你会遵循它,因为他是负责项目成功的人,但另一方面,你有责任积极主动并表达你的任何疑虑必须帮助你的老板做出正确的决定。这应该让你的老板再次思考,因为他不想让项目失败,因为他的“直觉”。
  4. 希望它有所帮助!