Top.Mail.Ru

Оператор goto: что это и где применяется

Оператор GOTO применяется в основном в прикладном или системном

программировании на высокоуровневых языках, которые поддерживают разбивку

кода на структуру и структурную обработку исключений:

  • Java;
  • C#;
  • C++;
  • C;
  • Python;
  • и др.

Это довольно спорный оператор, и по сей день ведется много дискуссий по поводу

необходимости его применять. Так происходит, потому что мотивы его применения

при разном подходе программирования очень сильно отличаются.

Оператор GOTO: общие свойства

Оператор Goto нужен в тех случаях, когда по каким-то причинам необходимо
осуществить безусловный переход к определенной точке в коде программы, как
правило эта точка обозначается номером строки или меткой. Поэтому в основном
этот оператор состоит из 2-х частей:

  1. Самого оператора GOTO;
  2. Метки. В основном метка goto— это какое какое-то число, но в некоторых языках
    это может быть абсолютно любой идентификатор.

Основная цель этого оператора заключается в том, что он определяет порядок
исполнения программы. То есть программа будет исполняться сразу после метки
GOTO.

Свойства GOTO


Можно постараться обобщить свойства goto:

  1. Вообще не структурирован. То есть он может применяться в абсолютно лбом
    месте кода, место его применения ни от чего не зависит.
  2. Может сгруппировать исходный код. Если есть структура кода, то в принципе
    можно оперировать блоками кода по-разному: переставлять их местами как в
    конструктор лего. Однако если применить оператор GOTO, то «конструктор» с
    блоками будет практически невозможен, потому что это способно напрочь сломать
    программу.

Применения GOTO в коде программы в первую очередь влияет на качество самого
кода и на его компоненты. Поэтому применение GOTO должно быть хорошо
обдуманным, а возможно даже проще найти какие-нибудь более безопасные
альтернативы.
Оператор GOTO, в современном программировании часто в более “древних”
языках, таких как Basic или Fortan, реже он используется в Си. В более современных
языках, его стараются не использовать, потому что существуют альтернативные и
более эффективные методы:

  • использование циклов;
  • внедрение обработчиков исключений;
  • деструкторы;
  • и др.

Раньше оператор GOTO активно применяли, особенно в Си. Но современной
программирование очень усложнилось и его применение стало нецелесообразно.
Многие современные программисты замечают, что применение GOTO дает
неконтролируемую возможность «прыгать по коду». А когда код разрастается, то
получается эффект «spaghetti». «spaghetti-код» – это код, который очень сильно
запутан и закручен, что напоминает одноименное блюдо.

Заключение

Возможно вам будет интересно почитать статью “Pull Request на Git”

Поэтому есть общая рекомендация по применению этого оператора:
Не нужно применять оператор GOTO, если на то нет очень веской
причины, а поиск альтернативных методов не принес никаких
результатов.

Text.ru - 100.00%
Поделись статьей с друзьями!

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *