首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集合是否也应该负责创建对象?(单一责任模式)

集合是否也应该负责创建对象?(单一责任模式)
EN

Stack Overflow用户
提问于 2009-03-10 23:11:55
回答 1查看 94关注 0票数 0

对象集合是否也应该负责创建新对象?

让我解释一下。我有两个类,PhoneCall和PhoneCallList。PhoneCallList是PhoneCall对象的集合。我们的架构师和我在如何创建新的PhoneCall对象上存在分歧。目前,PhoneCall对象有一个名为Create的方法将记录添加到数据库,PhoneCallList对象有一个名为Add的方法将一个PhoneCall添加到列表中。

架构师还希望让PhoneCallList中的Add方法在数据库中创建新记录,并将其添加到集合中。这样做是否违反了单一责任原则?对我来说,这不是最好的方式。

哪种方法是最好的?

*两个对象都不了解DB。负责所有数据访问的呼叫服务。问题是PhoneCall或PhoneCallList对象应该调用执行数据访问的服务吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-03-10 23:25:32

关于上下文,我有很多不确定的地方,但看起来有两个问题。谁应该创建PhoneCall对象,谁应该向数据库添加PhoneCall。我建议由操作PhoneCallList的上层模块创建PhoneCall对象,并将其传递给PhoneCallList的“Add”函数。我也会倾向于这两个类都不做DB条目。这听起来像是一个很好的第三类的理由。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/632658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档