<分区>
哲学问题在这里 当涉及到 OOP 和数据库时,特别是那些用数据库备份类的程序,解决这个问题的最佳方法是什么?例如,一个团队类可能有一组球员。该程序只会在启动时从数据库中加载所有团队数据,在内存中进行所有操作,然后在关闭时写入数据库。还是在发生变化时将每个数据操作写入数据库更好?如果这是更好的方法,为什么首先将数据加载到内存中?
另一个问题是,在我看来,数据库以一种重要的方式打破了标准的 OOP。对于我的带有玩家集合的团队类,使用 OOP,玩家类不需要拥有一个属性来保存团队名称。玩家将从其所属的团队类别中获取团队名称。现在,要将球员保存在数据库中,每个球员记录都必须有一列用于球队名称(或球队 ID,但这是一回事)。
换句话说,如果你需要一个 GetAllPlayers() 方法,你会把它作为团队类中的成员方法,从内存中返回集合中的所有玩家,还是在玩家类中创建一个静态方法来从数据库中获取所有玩家?
有人知道如何回答这些问题吗?
我已经有一段时间没上过编程课了。任何人都知道一本很好的教科书可以理解这里的最佳方法吗?