Правя scala чрез курса по функционално програмиране на coursera. Забелязах, че автоматичната проверка на стила ми казва, че използването на „връщане“ е лош навик. Защо така? За мен изглежда, че използването на return ще направи кода по-четлив, защото всеки друг програмист може незабавно да види това и какво връща функцията.
Пример, защо е това;
def sum(xs: List[Int]): Int = {
if( xs.length == 0){
return 0
}else{
return xs.head + sum(xs.tail)
}
}
Смята се за по-лошо от това;
def sum(xs: List[Int]): Int = {
if( xs.length == 0){
0
}else{
xs.head + sum(xs.tail)
}
}
Свикнал съм с javascript, така че това може да е причината да се чувствам неспокоен за него. И все пак, може ли някой да направи ясно защо добавянето на израза return прави моя код по-лош? Ако е така, защо има израз за връщане в езика?
if...else
. (вижте отговора ми) - person Boris the Spider   schedule 06.05.2014