Форматирование в Go | OTUS

Курсы

Программирование
PHP Developer. Basic
-50%
Специализация PHP Developer iOS Developer. Professional Golang Developer. Professional Python Developer. Basic iOS Developer. Basic Архитектура и шаблоны проектирования MS SQL Server Developer Highload Architect Специализация C++ Developer Cloud Solution Architecture Специализация Java-разработчик Android Developer. Professional Программист С Специализация Fullstack developer VR/AR - разработчик Microservice Architecture Software Architect Team Lead Web-разработчик на Python Rust Developer NoSQL C# Developer. Professional Разработчик программных роботов (RPA) на базе UiPath и PIX Kotlin Backend Developer React.js Developer Node.js Developer Flutter Mobile Developer Symfony Framework C# Developer. Basic Unreal Engine Game Developer Groovy Developer
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Форматирование в Go

GoPro_Headline_970x70-1801-dc9277.png

Как известно, в программировании вопросы форматирования иногда вызывают ожесточенные споры, хотя, по сути, эти вопросы не являются самыми значимыми. Да и в целом, люди способны адаптироваться к разным стилям форматирования, однако все же лучше, если делать это им не нужно. Еще лучше, если разработчики тратят на это как можно меньше времени, а все придерживаются одинакового стиля. Но как обстоит дело с форматированием в Go?

1_pPD5avUhs2y2i9_VOrjqHA_1-1801-190a3d.png

В языке программирования Golang вопросами форматирования занимается программа gofmt (также она доступна как go fmt и работает она на уровне пакета, а не на уровне исходного файла). С ее помощью происходит считывание написанной Go-программы и выдача исходного кода в стандартном стиле отступов и с вертикальным выравниванием, причем комментарии сохраняются, а в случае надобности -- переформатируются. И если вы не знаете, как работать с какой-нибудь незнакомой шаблонной имплементацией кода, просто запустите gofmt. При этом никто не мешает переставить блоки в коде на свое усмотрение и даже сообщить об ошибке gofmt, если вы в этом уверены.

Благодаря gofmt, нет никакой необходимости тратить время на выравнивание, к примеру, комментариев по отношению к полям структуры -- это за вас сделает gofmt. Допустим, у вас есть следующий код:

1-1801-ac3b3f.png

Программа gofmt отформатирует код и ровно выстроит столбцы:

2-1801-93ac72.png

Теперь рассмотрим некоторые детали форматирования:

  1. Отступ. Для выполнения отступов используют табы, а gofmt осуществляет их вывод по дефолту. Что касается пробелов, то лучше их применять только тогда, когда это действительно нужно.
  2. Длина строки. У языка Go нет ограничений по длине строки, поэтому не стоит беспокоиться о переполнении. Вам кажется, что строка является слишком длинной? Просто оберните ее и выполните отступ с дополнительным табом.
  3. Скобки. Golang требует меньше скобок, чем такие языки, как Java или C, так как, например, те же управляющие структуры (if, for, switch) в своем синтаксисе не содержат скобок. Вдобавок к этому, иерархия приоритетов операторов считается более короткой и понятной -- код ниже будет означать именно то, что подразумевается пробелами, в отличие от других языков программирования:

3-1801-b4b8ff.png

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

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

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

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

Автор
0 комментариев
Для комментирования необходимо авторизоваться