【问题标题】:In which class should a GetAll method be?GetAll 方法应该在哪个类中?
【发布时间】:2013-05-26 07:08:07
【问题描述】:

假设我有一个方法 GetAllEmails() 从数据库中检索所有电子邮件。问题是我应该把方法放到哪个类?

许多资料,甚至教科书,都建议它应该放在Email 类中,但从逻辑上讲,电子邮件不应该知道如何获取所有电子邮件,我认为它应该放在这样的电子邮件管理器或助手类中语境。有意见吗?

【问题讨论】:

    标签: oop naming


    【解决方案1】:

    Repository 设计模式通常用于此目的,因此在您的情况下,它将是 EmailRepository(或类似的)类获取电子邮件。

    【讨论】:

      【解决方案2】:

      方法GetAllEmails() 必须连接到数据库并获取一些数据。所以我会把它放在一个与数据库相关的类中。这实际上取决于您正在编写哪种类型的应用程序,例如,如果您有一些其他方法可以连接到数据库并获取其他一些数据,那么您可以将它们全部放在一个类中。但是,如果您只连接到数据库以获取电子邮件,那么您可以在您的电子邮件类中拥有一个数据库子类。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-05-06
        • 2011-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-18
        相关资源
        最近更新 更多