Зло? Подивіться, вони просто різні.
if
є заявою. (test ? a : b)
є виразом. Вони не те саме.
Для вираження значень існують вирази. Заяви існують для виконання дій. Вирази можуть з’являтися всередині висловлювань, але не навпаки. Таким чином, ви можете використовувати потрійні вирази в інших виразах, наприклад, для термінів у підсумовуванні, або для аргументів методу тощо. Вам не доведеться , але ви можете, якщо хочете . У цьому немає нічого поганого. Деякі люди можуть сказати, що це зло, але це їхня думка.
Одне значення потрійного виразу полягає в тому, що він змушує вас обробляти і справжні, і хибні випадки. if
заяви не відповідають.
Якщо ви переживаєте за читабельність, ви можете їх відформатувати в читаному форматі.
Якось "зло" прокралося до словника програмування. Я хотів би дізнатися, хто перший її кинув. (Насправді, у мене є підозрюваний - він є в MIT.) Я вважаю за краще, щоб у нас були об'єктивні причини для ціннісних суджень у цій галузі, а не лише про смак і прізвище людей.