Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Hate Nested IFs? Consider this...
Message
De
13/01/2006 12:06:21
 
 
À
13/01/2006 11:47:40
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9
OS:
Windows 2000 SP4
Database:
Visual FoxPro
Divers
Thread ID:
01086217
Message ID:
01086595
Vues:
30
>>>>I think I would use:
>>>>
>>>>
>>>>
do case
>>>>   case not this.HaveCar()
>>>>   case not this.HaveLicense()
>>>>   case this.isDrunk()
>>>>   case this.isTired()
>>>>   case this.getCar().getTank().isEmpty()
>>>>   otherwise
>>>>      lCanDrive=.t.
>>>>endcase
>>>>
>>>>I guess there as many ways as programmers <g>
>>>
>>>Not that many ways. I think I side with you that IsDrunk(), IsTired(), and so on are better ways.
>>
>>I actually never use this approach :).
>>
>>It's only that I liked it when I saw it in YAG's code, and thought that if I ever needed something like that, I'd probably go that way. It just happened that I didn't need it, and that the framework (i.e. my boss) prefers separate IFs - in case someone else needs to read my code. So in my current style, the above would be:
>>
l=.t.
>>l= l and this.HaveCar()
>>l= l and this.HaveLicense()
>>...
>>if not l
>>   *-- report error
>>endif
>>return l
>>I know, this relies on VFP not executing any code past the point where l becomes .f., but I think the fears that this may change are unbased. The short logic hasn't changed since 1988, then why should it ever change?
>
>warning, with this style you cannot return a NULL value!

And not any other type, except a Logical.
Groet,
Peter de Valença

Constructive frustration is the breeding ground of genius.
If there’s no willingness to moderate for the sake of good debate, then I have no willingness to debate at all.
Let's develop superb standards that will end the holy wars.
"There are three types of people: Alphas and Betas", said the beta decisively.
If you find this message rude or offensive or stupid, please take a step away from the keyboard and try to think calmly about an eventual a possible alternative explanation of my message.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform