Ich habe mir die SQLite-Tabelle angesehen, die Core Data generiert, und festgestellt, dass alle Tabellenspalten mit 'Z' beginnen. Mir ist klar, dass dies ein Implementierungsdetail ist, aber ich war gespannt, warum dies der Fall ist und ob dies mit einer Entwurfsentscheidung verbunden ist. Weiß jemand zufällig oder errät warum?
Hier ist eine Beispielschemaausgabe der Core Data SQLite-Datenbank:
sqlite> .schema TABELLE ERSTELLEN ZPOST (Z_PK INTEGER PRIMARY KEY, Z_ENT INTEGER, Z_OPT INTEGER, ZPOSTID INTEGER, ZUSER INTEGER, ZCREATEDAT TIMESTAMP, ZTEXT VARCHAR); TABELLE ZUSER ERSTELLEN (Z_PK INTEGER PRIMARY KEY, Z_ENT INTEGER, Z_OPT INTEGER, ZUSERID INTEGER, ZAVATARIMAGEURLSTRING VARCHAR, ZUSERNAME VARCHAR); CREATE TABLE Z_METADATA (Z_VERSION INTEGER PRIMARY KEY, Z_UUID VARCHAR (255), Z_PLIST BLOB); TABELLE ERSTELLEN Z_PRIMARYKEY (Z_ENT INTEGER PRIMARY KEY, Z_NAME VARCHAR, Z_SUPER INTEGER, Z_MAX INTEGER);
Antworten:
Dies ist die Namenskonvention, die für die Verwendung in Core Data SQLite ausgewählt wurde.
Es gibt mehrere Gründe, warum es gewählt wurde. Einer der Hauptgründe ist, dass Z einer der am wenigsten verwendeten Buchstaben des Alphabets ist. Durch das Vorfixieren von Tabellennamen und Entitätsnamen mit Z haben sie sicherlich mehr Möglichkeiten für Entwickler, ihre eigenen Tabellen zu benennen, wobei die Wahrscheinlichkeit geringer ist, auf jemanden zu stampfen Namenskonventionen bereits.
Durch die Verwendung von Z und allen Großbuchstaben sind die Kerndatentabellen leichter zu erkennen und rufen die Entitätsobjekte auf. In einem Kommentar in der Frage erwähnte Mike, dass er seine Tabellen auch mit az benennt, damit sie den Boden sortieren. Dies könnte auch eine Überlegung gewesen sein.
quelle