on utilise ici la pile des appels.
avantages : le code est beaucoup plus lisible et maintenable : chaque action contient également le traitement de l'annulation qui n'est pas éparpillé à l'autre bout du code. SAns parler du fait qu'on n'évite de se retrouver avec des méthodes de plusieurs centaines (!!!!) de lignes, qui pour la lisibilité n'est vraimetn pas terrible.
En fait il suffit de looker tous les algos qui s'occupe de gérer des transactions atomiques : ils se passent très bien de goto et c'est propre.
[^] # Re: Hmm :/
Posté par TImaniac (site web personnel) . En réponse au journal Entretient du noyau Linux. Évalué à 3.
bool action1(){
if(!do_stuff() || !action2()){
cancel_stuff();
}
}
bool action2(){
if(!do_stuff() || !action3()){
cancel_stuff();
}
}
etc.
on utilise ici la pile des appels.
avantages : le code est beaucoup plus lisible et maintenable : chaque action contient également le traitement de l'annulation qui n'est pas éparpillé à l'autre bout du code. SAns parler du fait qu'on n'évite de se retrouver avec des méthodes de plusieurs centaines (!!!!) de lignes, qui pour la lisibilité n'est vraimetn pas terrible.
En fait il suffit de looker tous les algos qui s'occupe de gérer des transactions atomiques : ils se passent très bien de goto et c'est propre.