[#] [Из песочницы] Почему ранний возврат из функций так важен?
habrabot(difrex,1) — All
2018-02-01 16:45:02


Привет, Хабр! Представляю вашему вниманию перевод статьи [«Why should you return early?»][1] автора Szymon Krajewski

![image][2]

В начале моего приключения в роли программиста мой код зачастую напоминал вермишель. В любых условных выражениях я только и делал, что сразу переходил к описанию верного исхода, оставляя на конец остальное. «Это работает, вот и все», — говорил я себе, а код продолжал расти, как на дрожжах. Тысячи написанных методов в итоге заставили меня задуматься, а не стоит ли поменять их внутреннюю логику, возвращая отрицательные результаты как можно раннее. Таким образом, я пришел к тому, что теперь называю правилом «неотложного провала».

Очевидно, что существует несколько подходов написания одной и той же функции. Например, как можно начать выполнение основной части сразу после положительного исхода условного оператора, так и можно сначала пробежаться по всем отрицательным исходам, возвращая ошибки из функции, а уже только потом перейти к основной логике. Иными словами, я открыл для себя разные стили написания условных конструкций.
[Читать дальше →][3]

[1]: https://szymonkrajewski.pl/why-should-you-return-early/
[2]: https://habrastorage.org/webt/it/fn/e4/itfne4ffljtuwuhtcf5eralkiie.png
[3]: https://habrahabr.ru/post/348074/?utm_source=habrahabr&utm_medium=rss&utm_campaign=348074#habracut