LoucIsZbib / SpaceBaracraftCivilization

Le jeu 4XWF de Barakuun
GNU General Public License v3.0
1 stars 0 forks source link

DATAMODEL - séparer la création de la récupération des objets #12

Closed LoucIsZbib closed 3 years ago

LoucIsZbib commented 3 years ago

car là, c'est devenu un peu le bordel entre les différentes méthodes pour récupérer les objets :

Par exemple pour récupérer Star(x, y, z) Star(position: Position) Star(name)

Mais pour créer, Star(name) ne marche pas

Piste : Star.create(..) pour créer l'objet Star(...) pour récupérer, si l'objet n'existe pas --> exception

LoucIsZbib commented 3 years ago

Bonne et mauvaise idée :

LoucIsZbib commented 3 years ago

une solution quasi-élégante a été mise en place. Elle sécurise l'API contre les erreurs, et rend le code dans data.py plus simple à maintenir (si les objets doivent évoluer --> on utilise un attribut create=True/False dans la méthode new pour expliciter la creation --> on garde la facilité de sélection --> position garde un comportement get or create https://github.com/LoucIsZbib/SpaceBaracraftCivilization/commit/d80ee44e9a134a25e646bd4b13ab2415b2ef31b4