Bonjour!
Je travaille sur un projet personnel en C# (sur la plateforme Unity) et j'aurais besoin d'un éclairage pour choisir une solution parmi deux propositions.
Le programme que je suis en train de concevoir doit lire un fichier .txt et stocker les données dans une List<string>. Jusque-là, ça fonctionne comme je veux.
Etant donné que les données contenues dans le .txt respectent un modèle précis, chaque information se voit attribuer un numéro (de "zéro" à "List.Count", n'est-ce pas?), et chaque information reçoit le même numéro à chaque exécution.
(Concrètement, j'aurais aussi bien pu intégrer ces informations directement dans le code ; je ne le fais pas parce que ce sont des données de traduction : il y aura un fichier francais.txt, allemand.txt et anglais.txt, et c'est censé être extensible à toutes les langues qu'on veut. Bref!)
Pour l'instant, le code manque de lisibilité car j'accède à mes informations sous la forme "maListe[numéroTotalementAbstrait]". Du coup j'ai envisagé deux solutions:
- Utiliser des énumérateurs (par exemple "enum Astre {Planete = 0, PremierSatellite, DeuxiemeSatellire}") et accéder à mes données sous la forme "maListe[(int)Astre.Planete]".
- Utiliser des constantes (par exemple "const int Planete = 0; const int Premiersatellite = 1; const int DeuxiemeSatellite = 2;") et accéder à mes données sous la forme "maListe[Planete]".
Au niveau de la lisibilité, les deux solutions me conviennent, mais je n'en sais pas assez sur la construction des énumérateurs pour choisir en connaissance de cause. Auriez-vous des pistes à me proposer?
Merci d'avance pour vos propositions!
(Et si je manque de clarté, bien sûr vous n'avez qu'à poser des questions)
Partager