tag:blogger.com,1999:blog-4622127992180437360.post1678650120181093699..comments2022-11-28T00:20:34.932+01:00Comments on Sobe Session: Fin de projet SCADESobehttp://www.blogger.com/profile/00052582236106478920noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-4622127992180437360.post-28080522011642900462009-07-15T15:01:22.567+02:002009-07-15T15:01:22.567+02:00Imagine un programme ne manipulant que des booléen...Imagine un programme ne manipulant que des booléens, mais beaucoup.<br />Tes différentes fonctions (assez nombreuses et imbriquées) prennent en général entre 4 et 12 paramètres d'entrée... tous booléens. Et tes sorties le sont également.<br /><br />Ben à moins de créer des types structurés un peu partout tu vas à la catastrophe : rien ne t'assure que tu passes les paramètres dans le bon ordre, ni que tes résultats aient du "sens" vu que tes entrées sont interchangeables du point de vue du programme (genre prendre "engine_is_running" au lieu de "automatic_mode_selected"...).<br /><br />Bon, c'est basique, mais ça te sauve la vie à terme.<br /><br />Après, ce qui est assez intéressant, c'est de réfléchir à un agencement efficace des variables dans les types, donc à un ensemble de types qui t'aident et t'assurent (autant que possible) un comportement correct.<br />Perso, j'ai opté pour des types ayant du sens, physiquement, genre :<br />- Séparer ce qui est reçu par le programme et ce qui est calculé<br />- Regrouper par domaine (données moteur, données capteurs, données d'affichage, etc...)<br /><br />Mais on peut penser à d'autres stratégies : <br />- Typer en fonction des interfaces de ses fonctions (genre un type en input, un type en output => donc une seule variable d'entrée et une seule en sortie)<br />- Créer un type par paramètre (long... - cela dit, la plupart des paramètres sont doublés par une validité associée => doublons [value, validity])<br />- Autres ?<br /><br />Disons que pour revenir sur ma boutade "le typage c'est la vie" : comme pour beaucoup de chose en programmation (et dans la vie parfois...), tu t'aperçois que tu as un besoin crucial de quelque chose quand on te le retire. Du coup tu mesures mieux l'impact sur un code en général. <br />Et donc, les langages pas typés, c'est pô bien, mais surtout, j'ai appris qu'il ne faut pas négliger cette phase de développement (même si c'est pas nouveau).Sobehttps://www.blogger.com/profile/00052582236106478920noreply@blogger.comtag:blogger.com,1999:blog-4622127992180437360.post-2689702523948547582009-07-15T14:01:18.040+02:002009-07-15T14:01:18.040+02:00"Le typage c'est la vie" : mais enco..."Le typage c'est la vie" : mais encore ? Je sais que quand on joue avec le feu, ça fait exploser des fusées mais j'aurais apprécié des détails croustillants… s'il y en avait eu bien sûr.Poulethttp://da-bhm.orgnoreply@blogger.com