在使用处理后的文本创建对象实例之前,我遇到了这样的情况:我必须对数据进行大量的文本处理。我的问题是,oop设计是先进行文本处理,然后创建对象实例,还是将未处理的文本传递给对象构造函数并在那里进行处理。基本上:
方法1:
lots_of_text = "................."
class_properties = process_text(lots_of_text)
newobject = MyObject(class_properties)方法二:
newobject = MyObject(lots_of_text)当两者都可以工作时,这似乎是一个微不足道的问题,但当实际的文本处理可能需要数百行代码时,我认为这是值得考虑的。谢谢你的任何想法。
发布于 2016-07-25 14:27:04
在进行设计时,请考虑职责分离。文本处理是MyObject的责任吗?除了在构造函数中处理之外,它还需要lots_of_text的内容吗?(将处理推迟到以后,例如出于性能原因,这是否有意义?)如果这些问题的答案是“否”,那么文本处理就不属于MyObject。
https://stackoverflow.com/questions/38560645
复制相似问题