gpt4 book ai didi

poco - POCO的解释

转载 作者:行者123 更新时间:2023-12-03 11:08:17 27 4
gpt4 key购买 nike

我想知道是否有人可以对 POCO(普通旧 CLR 对象)给出一个可靠的解释(例如)。我找到了 brief explanation on Wikipedia但它确实没有给出可靠的解释。

最佳答案

与其称它们为 POCO,我更愿意称它们为持久性无知对象。

因为他们的工作很简单,所以他们不需要关心他们被用于什么或如何被使用。

就我个人而言,我认为 POCO 只是具有简单属性的公共(public)类的另一个流行词(如 Web 2.0 - 不要让我开始使用它)。

我一直在使用这些类型的对象来保持业务状态。

当您开始使用诸如存储库模式、ORM 和依赖注入(inject)之类的东西时,POCO 的主要好处就会真正显现出来。

换句话说 - 您可以创建一个 ORM(比如说 EF),它从某处(数据库、Web 服务等)拉回数据,然后将这些数据投影到对象(PO​​CO)中。

这些对象可以进一步向下传递到应用程序堆栈到服务层,然后传递到 Web 层。

然后,如果有一天您决定切换到 nHibernate,则根本不必碰您的 POCO,唯一需要更改的是 ORM。

因此,术语“持久性无知”——他们不在乎他们被用于什么或如何被使用。

所以总结一下,优点:

  • 允许数据的简单存储机制,简化序列化/通过层
  • 与依赖注入(inject)、存储库模式和 ORM 齐头并进。灵 active 。
  • 最小化复杂性和对其他层的依赖。 (高层只关心 POCO,POCO 什么都不关心)。松散耦合
  • 简单的可测试性(域测试不需要 stub )。

  • 希望有帮助。

    关于poco - POCO的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3392580/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com