您如何为类别分类这类设计?

yog*_*urt 5 c# design-patterns

我见过的以下类型的设计基本上都有"瘦"类,不包括任何类型的行为.辅助类用于插入/更新/删除/获取.

这是错的吗?它是反OOP吗?

User.cs

public class User
{

    public string Username { get; set; }
    public string Password { get; set; }
}


Users.cs


public class Users
{
    public static User LoadUser(int userID)
    {
            DBProvider db = new DBProvider();
            return dp.LoadUser(userID);

        }

}
Run Code Online (Sandbox Code Playgroud)

ghe*_*ton 1

我将其分类为领域对象或业务对象。这种设计的好处之一是它使模型与任何业务逻辑无关,并且它们可以在不同类型的环境中重用。

第二类可以归类为 DAO(数据访问对象)。

这种模式根本不是反循环的,并且被广泛使用。

  • 实际上,“保持模型与业务逻辑无关”是极其反 OOP 的,也称为“贫血领域模型”。OOP 的重点是将数据和对其进行操作的逻辑保持在一起。是的,它被广泛使用 - 因为大多数人仍然没有理解 OOP 和程序编程。 (4认同)