**Ретурнобулофобия** - боязнь начинающих программистов использовать логическое выражение в инструкции 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 заменить на логическое отрицание.