Это документация концепций, которые я изучил на курсе Golang на Sololearn.
Go — это язык программирования с открытым исходным кодом, который позволяет легко создавать простое, надежное и эффективное программное обеспечение. Go был разработан в Google в 2007 году для повышения производительности программирования в эпоху многоядерных, сетевых машин и больших кодовых баз.
package main
import "fmt"
func main () {
fmt.Println ("Go is fun to learn!")
}
Пакеты: Каждая программа Go состоит из пакетов. Программа Go начинает выполняться в главном пакете. Именно поэтому нам нужно объявить наш код как основной пакет — чтобы он выполнялся и создавал вывод:
Помимо main, в Go есть множество пакетов, которые можно импортировать и использовать в коде для выполнения различных задач. Одним из самых популярных пакетов является «fmt», который означает формат и обеспечивает функциональность ввода и вывода.
Импорт: Каждый пакет имеет экспортируемые имена, к которым вы можете получить доступ после их импорта. В Go имя является экспортируемым, если оно начинается с заглавной буквы. Вы можете получить доступ к экспортированным именам, используя: Имя пакета, точка и экспортируемое имя.
Мы обращаемся к функции PrintIn () пакета fmt, которая используется для генерации вывода. Мы предоставляем вывод, который хотим сгенерировать, внутри круглых скобок, заключенных в кавычки.
Как и в других языках программирования, таких как Java или C++, функция func main () является точкой входа нашей программы. Это функция, которая выполняется, когда мы запускаем нашу программу.
Ниже приведен код, который генерирует текстовый вывод:
package main
import "fmt"
func main () {
fmt.Println ("this is a test case!")
}
Мы видим, что код:
Определяет основной пакет
Импортирует пакет fmt, используемый для вывода текста
Определяет функцию main ()
Использует функцию Println () пакета fmt для создания требуемого вывода.
Комментарии: Комментарии — это утверждения в коде, которые объясняют, что делает код. В Go вы можете создать однострочный комментарий, используя две косые черты //. Все, что следует за косой чертой, считается комментарием. Пример:
// generate the output
fmt.Println ("I code and build")
Написание комментариев — это хорошая практика, которая позволяет вам и другим разработчикам легче читать и понимать, что делает код.
Мы также можем создавать многострочные комментарии в Go! Для этого мы помещаем комментарий внутрь /* и */.
Пример:
func main () {
/*
Developing solutions and building effective models to ensure adequate frameworks are used.
*/
fmt.Println("Hey what's up")
}
Переменные: Переменные используются для хранения значений. В Go для объявления переменных используется ключевое слово var. Пример:
var x int = 8
fmt.Println (x)
В приведенном выше коде объявлена переменная i типа int. (int означает целые числа и представляет собой целые числа. Мы можем присвоить переменной значение и вывести его. Мы также можем объявить несколько переменных в одной строке и присвоить им значения.
var i , k = 6, 79
Если вы присваиваете переменной значение, то объявление типа можно опустить, так как Go
автоматически примет тип присвоенного значения.
var i, j = 4, 56
Процесс присвоения значений переменным называется «инициализацией». Go поддерживает короткое объявление переменных с помощью :=
Пример: i := 8
Его также можно использовать для объявления и инициализации нескольких переменных в одной строке: x, y := 17, 8
Оператор := автоматически определяет и инициализирует переменные заданным значением.
Типы данных
Общие типы, которые поддерживает Go:
Float 32 — значение с плавающей точкой одинарной точности
Float 64 — значение с плавающей точкой двойной точности
String — текстовое значение
Bool — булево значение true или False.
Разница между float32 и float64 заключается в точности, то есть float64 будет представлять число с большей точностью, но займет больше места в памяти.
Примеры типов данных в коде:
var k int = 30
var r float32 = 2.43
var name string = "Fiona"
var online bool = false
fmt.Println(name)
fmt.Println(k)
fmt.Println(r)
fmt.Println(online)
Еще одной интересной особенностью Go являются нулевые значения: переменные, объявленные без значения, принимают нулевое значение своего типа:
// 0 for numeric types
// false for the boolean type
// "" for strings
Константы: Переменная может менять свое значение в ходе выполнения программы. Пример:
var b = 15
b = 2
В некоторых случаях вашей программе могут понадобиться значения, которые сохраняются во время работы программы. Такие значения называются константами, и они не могут быть изменены по сравнению с их начальным значением. Константы объявляются как переменные, но с ключевым словом const, и им необходимо присвоить значение.
const pi = 3.14
[ pi является константой и не может быть изменено] Константы также не могут быть объявлены с помощью синтаксиса :=.
Арифметические операторы: Go поддерживает все распространенные арифметические операторы. Процесс сложения строк называется конкатенацией строк.
Примеры:
a := 10
b := 9
// Addition
res := a + b
fmt.Println(res)
// Subtraction
res = a - b
fmt.Print(res)
// Multiplication
res = a * b
fmt.Println(res)
// Division
res = a / b
fmt.Println(res)
// Modulus, it results in the remainder of the division
res = a % b
fmt.Println(res)
Оператор плюс + также может быть использован для сложения строк. Пример:
q := "happy"
g := "everyday"
fmt.Println(q + g)
Операторы присваивания
Go также поддерживает короткие операторы присваивания, которые позволяют заменять такие утверждения, как:
a = a + b с более короткой версией: a += b
Существуют также короткие операторы присваивания для других арифметических операторов, таких как вычитание, деление, модулор.
a := 35
b := 9
a += b
fmt.Println(a)
a *= b
fmt.Print(a)