Мой коллега и я обсудили следующий вопрос передового опыта.
Большинство функций / методов начинаются с проверки некоторых параметров.
Я защищаю следующий стиль, который избегает вложения.
if (parameter one is ugly) return ERROR;
if (parameter two is nonsense || it is raining) return ERROR;
// do the useful stuff
return result;
Тот, кто имеет более функциональный / логический опыт программирования, предпочитает следующее, потому что это уменьшает количество точек выхода из функции.
if (parameter one is ok) {
if (parameter two is ok && the sun is shining) {
// do the useful stuff
return result
}
}
return ERROR;
Какой из них вы бы предпочли и почему?