工厂模式源模式
在基于类的编程中,工厂方法模式是一种创建模式,它使用工厂方法来处理创建对象的问题,而不必指定将要创建的对象的确切类。这是通过调用工厂方法来创建对象的--或者在接口中指定,由子类实现,或者在基类中实现,并可被派生类覆盖--而不是调用构造函数。
我的问题是工作单位模式,而工厂模式是相同的模式,有不同的名称,我不确定。
发布于 2019-01-29 21:28:15
我的问题是工作单位模式,而工厂模式是相同的模式,有不同的名称,我不确定。
你为什么认为它们是相同的模式?
我得让你失望虽然您已经找到并解释了factory模式是什么,但unit of work是另一回事。
马丁·福勒:
维护受业务事务影响的对象列表,并协调写入更改。(“企业应用体系结构模式”)
通常,它与repository pattern一起使用,并用于:
您可以在repository pattern和unit of work pattern 这里一起找到一个很好的解释。
发布于 2019-01-29 22:28:27
可能不一样了。工厂法是一种设计模式。工作单位是一种对象关系行为模式.
发布于 2019-01-30 06:27:01
不,他们不一样。
您已经很好地理解了在您的问题中提到的工厂模式,并且您还链接了一个解释它的资源。我不想在此重复这部分。
工厂模式是创造模式,其中UnitOfWork是行为模式。
工作单元(UoW)被注入存储库中。UoW可以根据您的设计创建存储库;但是创建(存储库)不是UoW的目标。基于设计,UoW在某些情况下可能会扮演附加的工厂角色。
如前所述,这里
工作单元跟踪在业务事务处理期间可能影响数据库的所有操作。当您完成之后,它会根据您的工作确定更改数据库所需完成的所有工作。
正如您在上面的引用中所看到的,UoW的主要责任是跟踪业务事务中所做的更改,并在范围结束时清除(或丢弃)这些更改。
这问题详细讨论了UoW;可能对您有所帮助。
https://stackoverflow.com/questions/54429194
复制相似问题