Вопрос №56343 от пользователя Dmitry Morozov в уроке «Изменяемая конфигурация», курс «PHP: Объектно-ориентированный дизайн»

Dmitry Morozov

Всегда старался по возможности использовать только один return, после всей логики. Мне казалось это улучшает читаемость кода. Но в решении учителя ситуация несколько иная. Такое решение актуально для такой простой логики или в целом это нормальная практика?

3 0

Роман Ашиков

Это нормальная практика. Представьте очень длинную функцию и какие-то условия в ней в которых можно было бы сделать возврат и не листать эту функцию до самого конца, чтобы понять, что происходит. А если делать только один возврат в самом конце, то нужно будет потратить дополнительное время, это как минимум. Лучше прерывать выполнение функции, и делать возврат там где это уместно. Например, есть понятие guard expression, когда мы в самом начале функции отбрасываем какие-то пограничные случаи делая возвраты, чтобы не думать об этих моментах при написании всей последующей логики. Можно приводить еще примеры, но я думаю вы уже поняли о чём я.

1

Dmitry Morozov

Роман Ашиков, в целом понял. Но возник ещё вопрос по return. Допустимо ли такое использование: return function($args); и return $a * $b; или же стоит передавать в return уже что-то оформленное?

0

Роман Ашиков

Допустимы оба варианта. Всё зависит от ситуации. Главное, чтобы код был понятен и легко читался.

1

Есть вопрос или хотите участвовать в обсуждении?

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы соглашаетесь c «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
22 сентября 8 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
22 сентября 8 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
22 сентября 8 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
22 сентября 8 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
22 сентября 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Новый
Создает веб-приложения со скоростью света
22 сентября 5 месяцев

Похожие вопросы

Гай 06 июня 2021 →

https://ru.hexlet.io/code_reviews/413506 Не пойму почему ожидает "one!", тесты сильно запутали, не пойму гд...

Дилянур 21 мая 2021 →

https://ru.hexlet.io/code_reviews/408531 решение в repli проходит , тут нет. Подскажите, в каком направлен...

Динара 17 октября 2020 →

я не могу решить, вот код ревью https://ru.hexlet.io/code_reviews/328345 почему в решении options -private?...

Дмитрий И 11 октября 2020 →

В примере https://prnt.sc/uwzogi В тесте https://prnt.sc/uwzoqg отличаются ошибка или опечатка! Не могу п...

Станислав Пефтев 07 августа 2020 →

Добрый день. После решения упражнения, посмотрел решение учителя и снова увидел, что там строковые переменн...