设计问题 - 从DB加载信息

时间:2010-03-21 08:53:31

标签: c++

我需要构建一个代表DB中某个表中一行的类(假设该表是'Subscriber',类也是如此)。

  1. 我可以拥有类Subscriber,构造函数接收订阅者的Objectkey,从DB检索信息并初始化其成员。

  2. 我添加了另一个类 - SubscriberLoader,它有一个静态方法'LoadSubscriber'。此方法将接收订户objectkey,从DB检索信息,创建订阅者对象并初始化其成员。订阅者构造函数将是私有的,SubscirberLoader将是订阅者的朋友类 - 这样,客户端只能使用加载器构建订阅者。

  3. 哪两个更好?还有其他建议吗?

2 个答案:

答案 0 :(得分:2)

我建议采用第二种方法,因为它将两个问题分成两个不同的类:

  • 对用户应该做的事情的关注
  • 从数据库中提取订阅者的问题

答案 1 :(得分:0)

嗯,延迟加载(第二个)要好得多,这样你就可以在未来更明智地管理性能。