【发布时间】:2012-05-03 18:24:14
【问题描述】:
当我使用 Java 编程时,我曾经有对象和管理器。你知道,一个类(通常是单例),它将保存某个类的对象的集合,并可以方便地管理它们。现在,在 Scala 中,我发现自己越来越处于这种情况下,将所有功能放在伴随对象中并避免创建不同的管理器对象是很诱人的。
这一切都始于为实例提供 ID,然后......为什么不在伴随对象中包含集合?如果集合在那里,为什么不把所有的方法都放在里面呢?因此,不再需要经理。然而,一个特点是伴随对象通常只有一个名称,如Car(不像Cars 或CarManager 假定多个),因此使用复数操作的方法在与对象名称的耦合措辞中看起来很奇怪。
我想知道您对这种情况的看法,并想知道这种方法是否比看似不必要的臃肿经理模式更可取。对任何文章的任何引用也将不胜感激。
【问题讨论】:
-
嗯...不太清楚这与问题有何关系,但无论如何谢谢,我会去阅读它! (ScalaTodoList 教程除外,因为我早就通过了)。
-
他们使用伴随对象来保存所有模型操作。如果我理解正确,您也可以尝试这样做。
-
哦,先没认出来。 Play 框架是一个不同的例子,但是对于 Salat,他们似乎真的在实践一种类似于我所询问的方法。他们将它与 thoredge 的建议混合在一起——依赖注入!
标签: scala design-patterns