Мы уже рассказали о том, как появился язык GO. Теперь пришло время познакомиться с синтаксисом этого языка. Это важная часть его изучения. Если вы еще не знакомы с историей, рекомендуем познакомиться с данным материалом.
Наибольшую важность любой программы занимает структура. Она имеет много общего с Java и Python. Программа делится на отдельные пакеты Package, являющиеся по сути заменой include или модулей в Python. В добавок к package можно осуществлять настройку отдельной области видимости.
Выполнить импорт пакета в программу можно при помощи import:
import имя_пакета
Каждая программа включает набор переменных. Go - это язык со строгой типизацией, каждая переменная перед применением должна быть отправляться вместе с ее типом:
var имя_переменной тип
В переменных допускается использование русского языка. Если вы сразу же зададите переменной значение, то языком будет подобран ее тип:
var имя_переменной := значение
Пользователь может создавать указатели.
Добавьте звездочку перед именем переменной:
var *имя_переменной тип
Для получения доступа к переменной, объявленной внутри package из другого package, следует отметить, что доступны извне только переменные, написанные с большой буквы:
имя_пакета.имя_переменной
имя_пакета.имя_функции
Управляющие инструкции очень схожи по своему синтаксису с привычными в Си:
if условие {
действия
}
Цикл for тут точно такой, как и в Си, только без круглых скобок, так выглядит даже проще:
for i := 0; i <= ограничитель; i++ {
действия
}
Функции golang объявляются с помощью директивы func, и в ней можно указать не только параметры, но и возвращаемые переменные:
func имя_функции (принимаемые переменные) (возвращаемые переменные) {
действия
}
Важно заметить, что точка с запятой после строк не ставиться. Вместо ООП классов в Go используются структуры, которые могут иметь поля и методы, а также могут реализовать интерфейсы. Чтобы объявить структуру используется инструкция type:
type имя_структуры struct {
имя_поля тип_поля
}
Кроме полей, структуры могут иметь методы, что позволяет использовать их в качестве классов. Объявление метода немного отличается от функции golang:
func (имя_указателя *тип_структуры) имя_метода() {
действия
}
Создание объектов структур происходит так же, как и обычных переменных, а обращаться к их полям можно через точку:
имя_объекта.имя_метода(параметры)
К полям мы тоже обращаемся через точку:
имя_объекта.имя_поля
Теперь вы знаете основы языка и пришло время перейти ближе к практике. Дальше будет программирование на Go и примеры Golang, минимум теории.