interface entre une classe et une DB
Bonjour,
je débute un petit projet C++ que je pourrais résumer comme ceci :
1 j'ai un fichier contenant des messages appartenant a differentes grandes catégories.
2 Je dois modifier ces messages moyennant l'interrogation d'une base de données postgres ou sqlite.
Voici comment j'ai modélisé le 1 :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| class Fichier {
vector<Category *> categoryList;
};
class Category {
vector<Message *> messageList;
};
class Message {
}; |
Pour l'instant je n'utilise pas l'héritage.
Pour le point 2, je ne souhaiterais ouvrir qu'une seule connexion par fichier pour modifier l'ensemble des messages qu'il contient. Je pense donc à l'héritage au plus haut niveau, pour la classe Fichier, et en cascade aussi pour Category et Message.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| class Fichier {
...
// plus de categoryList
};
class Category {
...
// plus de messageList
};
class Message {
...
};
class FichierPg : Fichier {
vector<CategoryPG> categoryList;
private :
PGconn maConnexion;
}
class CategoryPG : Category {
vector<MessagePG> messageList;
}
class MessagePG : Message {
int setMetadataVal(PGConn);
}
class Fichier SQlite : fichier {
vector<CategorySQlite> categoryList;
private:
sqlite3 maConnexion;
}
class CategorySQlite : Category {
vector<MessageSQlite> messageList;
}
class MessageSQlite : Message {
int setMetadataVal(sqlite3);
} |
Est ce que c'est correct ?
Merci d'avance pour votre aide