【问题标题】:OOP design pattern - add, edit and deleteOOP 设计模式 - 添加、编辑和删除
【发布时间】:2015-12-04 22:37:00
【问题描述】:

假设我必须处理某些内容的添加、编辑或删除。

最好创建三个类:

class AddSomething{}
class DeleteSomething{}
class EditSomething{}

或具有三个方法的类,例如:

class Something{
   public function add(){}
   public function delete(){}
   public function edit(){}
}

另一种选择是抽象类,但这三个功能几乎没有共同点,例如添加和删除(几乎没有)。

根据 OOP 的规则,最好的选择是什么?

【问题讨论】:

  • 第二种方法更好。
  • dao 模式,或者更好的存储库
  • 如果你深入思考,这与其说是关于 OOP 设计,不如说是关于系统设计和横切。我想说,系统可以这样设计,即对于单个表的添加/编辑/删除,您可以拥有一个可以处理所有表的类。是的,绝对!

标签: oop design-patterns


【解决方案1】:

...或三个接口,例如:IAddSomethingIEditSomethingIDeleteSomething?然后你的班级可以选择他们扮演的角色。

【讨论】:

    【解决方案2】:

    AddEditDelete 将是方法。 Something 听起来像是动词的主语,所以我会将其作为方法的参数。动词的宾语是什么——谁在做添加、编辑或删除?我会将那个演员表示为一个班级。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-30
      • 2011-10-16
      • 2011-04-17
      • 1970-01-01
      • 2012-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多