oop - 传递一个对象或传递一个生产该对象的工厂
问题描述
如果一个对象需要“某物”来完成它的工作,如何决定是用那个东西调用一个对象方法,还是用一个返回那个东西的工厂调用对象方法。
例如:
class C
{
void Do(Something s) { ...
}
或者:
class C
{
void Do(SomethingFactory f) { var something = f.GetSomething(); }
}
解决方案
推荐阅读
- bash - 如何在 bash 文件中正确添加和删除符号链接
- javascript - 表元素断言
- android - com.app.MainActivity 不能转换为 com.facebook.react.ReactActivity
- sql - SQL 性能对约束或唯一索引中的多个列的影响
- vb.net - VB.NET 数据库不在 MS Access 和登录错误
- python - 解析 HTML——为什么这个文档必须用文本而不是标签来解析?
- r - 使用 effsize 包中的 cohen.d 函数时出错(“row.names”长度无效)
- python - /api/register/ 'module' 对象的 TypeError 不可调用
- kubernetes - AKS 群集创建失败并出现错误“安全规则具有无效的端口范围”
- xamarin.forms - 图片太大