Dans l'ensemble, vous ne devez utiliser des instructions ternaires que lorsque l'instruction résultante est courte. Sinon, écrivez une instruction if normale. Le but d'un opérateur ternaire est de rendre votre code plus concis et lisible. Déplacer une instruction if complexe dans un opérateur ternaire va à l'encontre de cet objectif.
Est-il bon d'utiliser l'opérateur ternaire ?
Les opérateurs ternaires ne sont pas mauvais. Cependant, de nombreuses personnes choisissent de ne pas les utiliser car elles peuvent être difficiles à analyser au premier coup d'œil. L'expressivité que vous obtenez en utilisant les conditionnels if/else est la même que celle d'un ternaire - principalement - mais elle permet une meilleure lisibilité.
Les opérateurs ternaires sont-ils une mauvaise pratique ?
L'opérateur ternaire conditionnel peut certainement être surutilisé, et certains le trouvent assez illisible. Cependant, je trouve qu'il peut être très clair dans la plupart des situations qu'une expression booléenne soit attendue, à condition que son intention soit claire.
Le ternaire est-il meilleur que si ?
Le ternaire est plus rapide alors si/sinon tant qu'aucun calcul supplémentaire n'est nécessaire pour convertir la logique en ternaire américain. Lorsqu'il s'agit d'une opération simplement ternaire, elle a également une meilleure lisibilité. Si seule l'instruction est plus rapide que if/else, donc si la logique ne nécessite pas d'instruction else, utilisez-la.
Le ternaire est-il plus efficace que if else ?
L'opérateur ternaire ne devrait pas 't différer en termes de performances d'un équivalent bien écrit if / else… ils peuvent très bien résoudreà la même représentation dans l'Arbre de Syntaxe Abstraite, subir les mêmes optimisations etc..