Введение в структуры в Go
Структура собирает несколько полей разных типов под одним именем. В программе часто нужно хранить сразу несколько фактов об одном объекте: имя человека и его возраст, код товара и цену, координаты точки на плоскости. Каждый факт можно положить в свою переменную, но тогда легко развести связанные данные по разным именам и перепутать, что к чему относится.
Структура решает эту задачу. Ей дают одно общее имя типа, а внутри перечисляют поля с собственными именами и типами. Снаружи работают с одним значением целиком, а внутри видят, какая строка за имя, какое число за возраст. Так проще читать программу и передавать связанный набор данных одной записью.
Поле структуры похоже на переменную, но живет внутри значения структуры. К полю обращаются через точку после имени значения: сначала имя структуры, затем точка, затем имя поля. Отдельные поля можно читать, менять и сравнивать так же, как обычные переменные того же типа.
Без структуры пришлось бы вручную следить, что пара переменных всегда описывает одного и того же человека или один и тот же заказ. Со структурой эти части записаны в одном месте, и имя типа подсказывает, что поля принадлежат вместе. Дальше в разделе разберем объявление типа, запись готового значения, копии и сравнение таких значений.