Ретурнобулофобия

Ретурнобулофобия – боязнь начинающих программистов использовать логическое выражение в инструкции return при возвращении значения из булевой функции.


Симптомы: использование следующей конструкции в программе


PHP
# Python
def f():
    ...
    if expression:
       return True
    else
       return False

PHP
// C++
bool f()
{
    ...
    if (expression)
       return true;
    else
       return false;
}

или такой конструкции:


PHP
# Python
def f():
    ...
    if expression:
       return True
   return False

PHP
// C++
bool f()
{
    ...
    if (expression)
       return true;
    return false;
}

Лечение: использование следующей конструкции:

PHP
# Python
def f():
    ...
    return expression

PHP
// C++
bool f()
{
    ...
    return expression;
}

Чуть более сложная в лечении форма ретурнобулофобии:

PHP
# Python
def f():
    ...
    if expression:
       return False
    else
       return True

PHP
// C++
bool f()
{
    ...
    if (expression)
       return false;
    else
       return true;
}

Лечение аналогично, с использованием логического отрицания.


Некоторые исследователи также считают формой ретурнобулофобии использование в логических выражений конструкций вида


PHP
expression == True

или


PHP
expression == False

Например:


PHP
# Python
if IsPrime(n) == True:
    print("Prime")
else:
    print("Composite")

PHP
// C++
if (IsPrime(n) == True)
    cout << "Prime" << endl;
else
    cout << "Composite" << endl;

Лечение: == True можно опустить, == False заменить на логическое отрицание.