Управляющие структуры и оператор if в Go | OTUS
Скидка до 15% на курсы ноября, декабря и января
❄️ До 25.12 Забрать скидку! →
Выбрать курс

Управляющие структуры и оператор if в Go

В языке программирования Go управляющие структуры схожи со структурам в C, однако они имеют свои важные особенности. Например:

  • отсутствует цикл do либо while, зато существует слегка обобщенный for;
  • switch является более гибким;
  • switch и if принимают необязательный оператор инициализации по аналогии с for;
  • операторы break и continue способны принимать дополнительную метку, нужную для определения break либо continue.

Также существуют новые управляющие структуры, тот же type switch (переключатель типа) или select -- мультиплексор многоканальной связи. Немного отличается и синтаксис: отсутствуют круглые скобки, тела всегда должны разделятся фигурными скобками.

Давайте подробнее остановимся на операторе if.

Оператор if

Простой if в Golang выглядит следующим образом:

1-20219-cdc527.png

Наличие обязательных фигурных скобок поощряет написание простых if на нескольких строках. В принципе, это хорошая практика, особенно если тело включает в себя контролирующий оператор, тот же break или return.

Так как if и switch принимают выражение инициализации, нередко можно встретить задание в таком выражении локальной переменной.

2-20219-d5ad9b.png

В Go-библиотеках можно найти случаи, когда if не передает поток исполнения программы последующему оператору, в результате чего тело заканчивается на break, goto, continue либо return, то есть ненужный else опускается.

3-20219-35e901.png

Ниже -- пример распространенной ситуации, при которой код следует защищать от последовательности условий ошибки. То есть программный код читается хорошо, когда успешный поток управления направлен по странице вниз, причем ошибки устраняются в момент их возникновения. Но так как случаи ошибок, как правило, оканчиваются на операторах return, то и результирующий программный код в итоге не нуждается в операторах else.

4-20219-017b3f.png

По материалам https://golang-blog.blogspot.com/.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто
Новогодние скидки в Otus!-15% ❄️
Успейте забрать свою скидку до 25.12 →