Каталог решений - Операторы перехода в программном коде: использовать или нет?

Операторы перехода в программном коде: использовать или нет?

Операторы перехода в программном коде: использовать или нет?

В наличии

Рассмотрим ситуации использования операторов перехода Перейти (GoTo), Возврат (Return), Прервать (Break), Продолжить (Continue). Как вы считаете — это дурной тон, нормальная практика или зависит от ситуации?

Категория:

Описание

Этот вопрос появился у нас в процессе обсуждения некоторых технических вопросов и проведения code-review, но мне интересно обсудить его и на данном тематическом ресурсе. Скажу сразу — мнение в нашей команде разделилось.

Со времен «старой школы» существует мнение, что структурное программирование — это хорошо, а любое отступление от него — это плохо. Однако, общение с профессиональными программистами показывает, что использование операторов break, continue, return на практике применяется довольно часто, потому что это удобно и в большинстве случаев делает программу более понятной. Если взять код типовой конфигурации от компании 1С и немного покопаться, то встречаются эти оба подхода вперемешку (предположу, что писали разные люди в разные временные промежутки).

И действительно Дональд Кнут в свое время писал:

«… Настоящая цель программиста состоит в том, чтобы формулировать наши программы таким образом, чтобы их было легко понимать.» 

Давайте рассмотрим примеры использования и не использования этих операторов и сравним.
 

1. Оператор Перейти (GoTo).

 

Это совсем дурной тон и его использовать не будем). Однако интересно было бы услышать ваши мысли, возможно в сообществе еще есть «староверцы».

2. Оператор Возврат (Return).

 

Давайте рассмотрим некоторый виртуальный пример. Задача будет следующая: Требуется написать функцию получения математическое ожидание покупок клиента или средний чек.

 

has been added to your cart:
Оформление заказа