Bon j’arrive un peu en retard sur le sujet….
Bon alors déjà écrire les choses en dure dans le code c’est non. Je comprends bien que dans un premier temps ça arrange tout le monde, mais ensuite après plusieurs versions on veut faire un truc avec plus d’automatisation et/ou poussé tout en gardant la rétrocompatibilité et là je me casse les dents un truc de fou, et de plus du côté utilisateur il y a toujours des pertes qui se produisent….
Aujourd’hui la seule bonne manière c’est à l’utilisateur de faire tous les types de contact dans sa propre collection. Donc pour donner mon avis c’est non pour mettre tous ça dans la collection officielle. QElectroTech semble maintenant pas mal utilisé (aux vues des retours que l’on a) et tout le monde s’accommode de cette lacune donc ça continuera ainsi. Je préfère 1000x ne rien coder (et encore plus si c’est coder un truc « en attendant mieux ») mais une fois lancer faire un truc complet, solide et réfléchie ensemble.
Ensuite voici comment je ferais la chose, et j’y ai déjà réfléchi par le passé.
Il faut que les bornes d’élément possèdent plus de propriété et pas que pour les contacts, ainsi on sait quoi faire avec la borne (ça résous déjà le problème que soulève galexis au sujet des contacts inverseurs) il faut que les bornes possèdent leurs propres textes (résous le problème des rotations de texte).
Avoir en dehors du code (un fichier) la liste des numéros de borne de contact, là je m’avance, mais je pense que les numéros sont standard relais / contacteur / bloc aux / bloc aux tempo peut importe la marque. Si c’est bien le cas alors ça rend les choses plus faciles, car il suffit d’incrémenter les numéros de contact au fur et à mesure.
*Avoir les numéros de contact et connaître le standard permet aussi de savoir si le nombre de contact liée à un maître est cohérent (actuellement on peut bien avoir 100 contacts esclave sans sourciller). Alors oui cela pourrait sembler secondaire, mais je sais que ce sera demandé un jour donc autant tout bien faire dès le début.
Il y a sûrement des choses que j’oublie mais voila l’idée.
Je peux peut-être sembler pénible mais avec l’expérience je sais que c’est une très grosse erreur de faire un truc qu’à moitié. Je ne compte plus le temps que j’ai perdu et la dette technique à cause de chose qu’on a mal fait et/ou pas très poussé, car on voulait rester simple, puis que j’ai repris car QElectroTech à évoluer et nos/vos exigences aussi.
Pour rebondir sur le sujet du paragraphe avec l’étoile *, avec le peu de vrai schéma que je fais, à chaque fois je me rends compte d’une chose qui manque c’est la possibilité (une fonctionnalité) de vérifier que le schéma est valide c’est-à-dire sans être exhaustif : tous les conducteurs ont un nom, tous les contacts sont liés à un esclave (et donc aussi que le nombre de contact est correct), toutes les bornes sont attribuées à un groupe de bornes, tous les éléments ont un label.
Je suis surpris que personne n’a jamais fait cette demande (ou alors j’ai oublié).
Pfiu quel pavé
Développeur QElectroTech