Que serait un langage (impératif) sans "if" ?
Le langage obligerait à cacher les tests dans le polymorphisme. Au lieu de
void accident(Vehicule v){
if (v.nbPneus == 2)
accidentVelo();
if (v.nbPneus > 2)
accidentGrave();
}
on serait obligé de:
void maFonction(Vehicule v){
v.accident();
}
class Vehicule{
// ...
virtual void accident();
}
class Velo: Vehicule {
void accident(){
accidentVelo();
}
}
class Voiture: Vehicule {
void accident(){
accidentGrave();
}
}
que voyez-vous d'autre comme impact dans la façon de programmer sans if? Peut-on s'en sortir sans "if" ?