0

我正在开发一个游戏SDK,它以故事情节、角色、练级等的建立和持久化为中心。

我从不同类的思维导图开始,现在正在将这些简单的表示带入 UML。由于游戏对象的持久化将使用 SQLite 完成,因此我将类表示为数据库记录类型。其中一种记录类型 RangedProperty 用于多个表:Factions、Traits、Status 等。

CREATE TABLE [RangedProperty] (
  [UID] INTEGER NOT NULL ON CONFLICT FAIL, 
  [OID] INTEGER NOT NULL, 
  [Name] TEXT, 
  [Description] TEXT, 
  [Tag] TEXT, 
  [Min] INTEGER DEFAULT 1, 
  [Max] INTEGER DEFAULT 100, 
  [Current] INTEGER DEFAULT 50);

由于这些表都使用相同的记录类型,将 Tag 字段保留在适当的位置是否有意义,并且 - 而不是为 Factions、Traits 等使用单独的表 - 只需为它们都使用同一个表?这似乎有助于提高可靠性,因为只需要对一张表进行记录类型的更改,从而减少出错的可能性。

谢谢!

注意:我曾考虑将 INTEGER 用于字段类型,因为它可以加快比较速度,但如果不使用 Tag 字段,请考虑这是一个没有实际意义的问题。

4

0 回答 0