在使用已处理的文本创建对象实例之前,我必须对数据进行大量文本处理。我的问题是,首先进行文本处理是否更好oop设计,然后创建对象实例,或者将未处理的文本传递给对象构造函数并在那里进行。基本上是:
方法1:
lots_of_text = "................."
class_properties = process_text(lots_of_text)
newobject = MyObject(class_properties)
方法2:
newobject = MyObject(lots_of_text)
当两者都有效时,这似乎是一个微不足道的问题,但是当实际文本处理可能是数百行代码时,我认为值得考虑。谢谢你的任何想法。
答案 0 :(得分:0)
在提出设计时,请考虑责任分离。文本处理是MyObject
的责任吗?是否需要lots_of_text
的内容,除了在构造函数中处理它? (例如出于性能原因,延迟处理是否有意义?)如果这些问题的答案为“否”,则文本处理不属于MyObject
。