我正在构建一个新应用程序,但无法决定解决这个问题的方式。
面向数据库数据的类是否应该使用以下方法从数据库构建自己:
class Foo
{
public buildYourselfFromDatabaseForID(...)
//and overloading the constructor etc.
public commitYourselfToTheDatabase();
}
或者我应该构建一个数据库管理类/工厂来处理所有 SQL 并为我构建对象,例如:
Foo var = dbManager->createMeAFooFromID(id);
// Make some changes to var
dbManger->commitChangesToFoo(var);
我以前曾参与过两种方式的项目,但无法真正决定在这个新项目中采用哪种方式,并想知道今天的普遍共识是什么?
我的意思是它们是两种方式的优点和缺点,但是在这方面更普遍采用的方法是什么?您可以指出他们的任何既定模式吗?