【发布时间】:2017-05-17 19:50:58
【问题描述】:
例如,在我们的应用程序中,我们可以从某个消息传递代理将数据加载到 DB 中,同时从 DB 中检索这些数据。
我们应该使用相同的绑定来加载和检索吗?或者在一般情况下不需要,最好为加载和检索创建单独的绑定?
【问题讨论】:
标签: oop architecture software-design
例如,在我们的应用程序中,我们可以从某个消息传递代理将数据加载到 DB 中,同时从 DB 中检索这些数据。
我们应该使用相同的绑定来加载和检索吗?或者在一般情况下不需要,最好为加载和检索创建单独的绑定?
【问题讨论】:
标签: oop architecture software-design
根据命令-查询分离原则,您不应该同时使用相同的绑定来加载和检索数据。这样,任何断言都可以调用任何返回值的方法(任何查询),而不必担心修改程序状态。
https://en.wikipedia.org/wiki/Command%E2%80%93query_separation
【讨论】:
像往常一样,这取决于您的项目,如果没有您的项目的详细信息,就很难回答您的问题。问问自己,在您的项目中使用相同的绑定是否有任何问题?您如何从单独的绑定中受益?考虑所有利弊,然后做出决定。只是不要使用模式或技术,因为这些天每个人都在谈论它。所有方法都有其优点和缺点,开发人员往往会过度设计事物。请记住,一个成功的项目是完成这项工作、在预算范围内完成并按时完成的项目,而不是在其堆栈中包含很多很酷的首字母缩略词(例如 SQRS、DDD、TDD 等)的项目。
【讨论】: