【发布时间】:2012-02-11 02:25:27
【问题描述】:
(使用 Python 3.2,尽管我怀疑它是否重要。)
我有class Data、class Rules 和课程Result。我用小写来表示类的一个实例。
rules 对象包含的规则如果应用于data 对象,则可以创建result 对象。
我正在决定将实际将规则应用于数据的(相当复杂且不断发展的)代码放置在何处。我可以看到两个选择:
将该代码放入类
Result方法中,例如parse_rules。Result构造函数将rules对象作为参数,并将其传递给self.parse_rules。将该代码放入一个新类
ResultFactory。ResultFactory是一个单例类,它有一个方法,比如build_result,它以rules作为参数并返回一个新建的result对象。
这两种方法的优缺点是什么?
【问题讨论】:
标签: python oop inheritance design-patterns class-factory