gerakolen Энтузиаст-разработчик с опытом более трех лет. Сфера интересов — backend, кибербезопасность, web 3.0 В этом уроке мы создадим и запустим простую программу на Go и на её примере познакомимся с организацией кода и основными функциями. ← Часть 2 Ресурсы для изучения Go с нуля Первая программа Давайте напишем программу на Go, которая будет считывать имя пользователя и выводить сообщение с приветствием в консоль. Первым делом создадим папку main/ и разместим там файл main.go , который будет содержать следующий код: main.go package main // определили пакет main import "fmt" // импортировали пакет fmt // функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) } Разбор программы Организация кода Наша программа начинается со строки package main, которая определяет используемый пакет. В Go каждый программный файл должен быть частью какого-либо пакета. При разработке на Go нужно обязательно создавать файл с объявлением главного пакета package main и функции main(), потому что именно она задает точку входа в программу. Стоит помнить, что имя пакета должно соответствовать названию директории, в которой расположены его файлы. К примеру, если в папке application/ содержится файл server.go, то название пакета в нем должно быть package application. В следующей строке происходит импорт пакета «fmt», который содержится в стандартной библиотеке языка и предназначен для форматирования ввода-вывода: main.go import "fmt" // импортировали пакет "fmt" для ввода-вывода Для импорта несколько пакетов используют круглые скобки: import ( "fmt" "strings" ) Стандартная библиотека языка содержит большое количество пакетов для часто используемых задач. К примеру, «fmt» используется для форматирования ввода-вывода, «strings» – для работы со строками. Для скачивания сторонних пакетов существует специальная команда go get <название пакета> Например, так можно скачать пакет lib/pq, содержащий драйвер для работы с СУБД PostgreSQL в Go: go get github.com/lib/pq ?? Библиотека Go разработчика Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика» ? Библиотека Go для собеса Подтянуть свои знания по Go вы можете на нашем телеграм-канале «Библиотека Go для собеса» ? Библиотека задач по Go Интересные задачи по Go для практики можно найти на нашем телеграм-канале «Библиотека задач по Go» Функции Переходим к разбору строк, содержащих логику работы программы: main.go // функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) } Здесь происходит объявление функции main() с помощью ключевого слова func и вызов функций fmt.Scan() и fmt.Print() из ранее импортированного пакета"fmt". Первая из них отвечает за ввод данных с клавиатуры, а вторая – за вывод сообщения с переданными данными в консоль. Что такое функции в Go? Функции – это подпрограммы, позволяющие структурировать, упрощать и адаптировать написанный код. Они принимают входные параметры (аргументы) и после их обработки выдают требуемый результат. Подробнее мы разберем функции в отдельном разделе, на текущем этапе главное — понять, что они отвечают за выполнение определенных задач, в нашем случае за запуск программы, считывание данных с клавиатуры и их вывод в консоль. Система модулей Модули в контексте языка Go — это коллекции пакетов и файлов конфигурации, которые обеспечивают управление зависимостями и версионирование проекта, а также решают проблемы, характерные для старой системы GOPATH. Они позволяют разработчикам создавать структурированные проекты и управлять версиями используемых библиотек. Давайте инициализируем модуль в ранее созданной директории main/. Для этого нам понадобится команда go mod init: go mod init github.com/<ваш_ник_в_github>/main Теперь в папке main/ должен появиться файл go.mod, в котором указаны все использованные модули и импортированные пакеты. Его содержимое будет выглядеть примерно так: go.mod module github.com/<ваш_ник_в_github>/main go 1.21.4 // здесь указана используемая в проекте версия go В первой строке файла go.mod содержится название модуля, которое обычно дается по адресу расположения репозитория. Далее указывается минимальная совместимая версия Go, после чего следует список зависимостей. В нашем случае он пуст. Для его обновления нужно импортировать пакет с помощью команды go get , как это было показано ранее с lib/pq . На практике часто используется команда go mod tidy, которая помимо импорта загружает отсутствующие зависимости и удаляет лишние. Компиляция и выполнение программы Язык Go является компилируемым, то есть написанный на нём исходный код преобразуется в машинный и затем записывается в файл, исполняемый компьютером. Компиляция – это процесс преобразования программы, написанной на языке программирования высокого уровня, в исполняемый машинный код, который может быть выполнен компьютером. Компиляция позволяет предупредить возможные ошибки и оптимизирует исходный код, что хорошо сказывается на производительности программы. В Go есть два способа запуска программ: С помощью команды go run <имя_файла>.go . Она автоматически компилирует исполняемый файл, запускает его и сразу же удаляет. Этот способ используется в тех случаях, когда нужно разово запустить небольшой кусок кода и быстро получить результат. С помощью команды go build <имя_файла>.go . Она также занимается компиляцией и создает в директории исполняемый файл, способный запускаться на разных ОС. Особенностью этой команды является то, что она обеспечивает кроссплатформенность, так как позволяет контролировать, для какой ОС и архитектуры создается бинарный файл. Скомпилируем нашу первую программу и посмотрим на полученный вывод. Для этого в консоли введем команду go build main.go, предварительно перейдя в ранее созданную директорию main/. В результате в папке main/ должен появиться исполняемый файл main.exe (Windows) или main (Linux / MacOS). Чтобы его запустить, напишем в консоли main (Windows) или ./main (Linux / MacOS). В появившееся поле введем любую строку, пусть это будет user , после чего получим сообщение Hello, user, что свидетельствует об успешном выполнении кода. Подведём итог В этом уроке мы на примере простой программы разобрали концепции программирования и принципы организации кода на Go, а также научились создавать модули и компилировать исходный код. В следующем уроке узнаем о составных частях любой программы – переменных, основных операциях и типах данных. *** Содержание самоучителя Особенности и сфера применения Go, установка, настройка Ресурсы для изучения Go с нуля Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
Энтузиаст-разработчик с опытом более трех лет. Сфера интересов — backend, кибербезопасность, web 3.0 В этом уроке мы создадим и запустим простую программу на Go и на её примере познакомимся с организацией кода и основными функциями. ← Часть 2 Ресурсы для изучения Go с нуля Первая программа Давайте напишем программу на Go, которая будет считывать имя пользователя и выводить сообщение с приветствием в консоль. Первым делом создадим папку main/ и разместим там файл main.go , который будет содержать следующий код: main.go package main // определили пакет main import "fmt" // импортировали пакет fmt // функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) } Разбор программы Организация кода Наша программа начинается со строки package main, которая определяет используемый пакет. В Go каждый программный файл должен быть частью какого-либо пакета. При разработке на Go нужно обязательно создавать файл с объявлением главного пакета package main и функции main(), потому что именно она задает точку входа в программу. Стоит помнить, что имя пакета должно соответствовать названию директории, в которой расположены его файлы. К примеру, если в папке application/ содержится файл server.go, то название пакета в нем должно быть package application. В следующей строке происходит импорт пакета «fmt», который содержится в стандартной библиотеке языка и предназначен для форматирования ввода-вывода: main.go import "fmt" // импортировали пакет "fmt" для ввода-вывода Для импорта несколько пакетов используют круглые скобки: import ( "fmt" "strings" ) Стандартная библиотека языка содержит большое количество пакетов для часто используемых задач. К примеру, «fmt» используется для форматирования ввода-вывода, «strings» – для работы со строками. Для скачивания сторонних пакетов существует специальная команда go get <название пакета> Например, так можно скачать пакет lib/pq, содержащий драйвер для работы с СУБД PostgreSQL в Go: go get github.com/lib/pq ?? Библиотека Go разработчика Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика» ? Библиотека Go для собеса Подтянуть свои знания по Go вы можете на нашем телеграм-канале «Библиотека Go для собеса» ? Библиотека задач по Go Интересные задачи по Go для практики можно найти на нашем телеграм-канале «Библиотека задач по Go» Функции Переходим к разбору строк, содержащих логику работы программы: main.go // функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) } Здесь происходит объявление функции main() с помощью ключевого слова func и вызов функций fmt.Scan() и fmt.Print() из ранее импортированного пакета"fmt". Первая из них отвечает за ввод данных с клавиатуры, а вторая – за вывод сообщения с переданными данными в консоль. Что такое функции в Go? Функции – это подпрограммы, позволяющие структурировать, упрощать и адаптировать написанный код. Они принимают входные параметры (аргументы) и после их обработки выдают требуемый результат. Подробнее мы разберем функции в отдельном разделе, на текущем этапе главное — понять, что они отвечают за выполнение определенных задач, в нашем случае за запуск программы, считывание данных с клавиатуры и их вывод в консоль. Система модулей Модули в контексте языка Go — это коллекции пакетов и файлов конфигурации, которые обеспечивают управление зависимостями и версионирование проекта, а также решают проблемы, характерные для старой системы GOPATH. Они позволяют разработчикам создавать структурированные проекты и управлять версиями используемых библиотек. Давайте инициализируем модуль в ранее созданной директории main/. Для этого нам понадобится команда go mod init: go mod init github.com/<ваш_ник_в_github>/main Теперь в папке main/ должен появиться файл go.mod, в котором указаны все использованные модули и импортированные пакеты. Его содержимое будет выглядеть примерно так: go.mod module github.com/<ваш_ник_в_github>/main go 1.21.4 // здесь указана используемая в проекте версия go В первой строке файла go.mod содержится название модуля, которое обычно дается по адресу расположения репозитория. Далее указывается минимальная совместимая версия Go, после чего следует список зависимостей. В нашем случае он пуст. Для его обновления нужно импортировать пакет с помощью команды go get , как это было показано ранее с lib/pq . На практике часто используется команда go mod tidy, которая помимо импорта загружает отсутствующие зависимости и удаляет лишние. Компиляция и выполнение программы Язык Go является компилируемым, то есть написанный на нём исходный код преобразуется в машинный и затем записывается в файл, исполняемый компьютером. Компиляция – это процесс преобразования программы, написанной на языке программирования высокого уровня, в исполняемый машинный код, который может быть выполнен компьютером. Компиляция позволяет предупредить возможные ошибки и оптимизирует исходный код, что хорошо сказывается на производительности программы. В Go есть два способа запуска программ: С помощью команды go run <имя_файла>.go . Она автоматически компилирует исполняемый файл, запускает его и сразу же удаляет. Этот способ используется в тех случаях, когда нужно разово запустить небольшой кусок кода и быстро получить результат. С помощью команды go build <имя_файла>.go . Она также занимается компиляцией и создает в директории исполняемый файл, способный запускаться на разных ОС. Особенностью этой команды является то, что она обеспечивает кроссплатформенность, так как позволяет контролировать, для какой ОС и архитектуры создается бинарный файл. Скомпилируем нашу первую программу и посмотрим на полученный вывод. Для этого в консоли введем команду go build main.go, предварительно перейдя в ранее созданную директорию main/. В результате в папке main/ должен появиться исполняемый файл main.exe (Windows) или main (Linux / MacOS). Чтобы его запустить, напишем в консоли main (Windows) или ./main (Linux / MacOS). В появившееся поле введем любую строку, пусть это будет user , после чего получим сообщение Hello, user, что свидетельствует об успешном выполнении кода. Подведём итог В этом уроке мы на примере простой программы разобрали концепции программирования и принципы организации кода на Go, а также научились создавать модули и компилировать исходный код. В следующем уроке узнаем о составных частях любой программы – переменных, основных операциях и типах данных. *** Содержание самоучителя Особенности и сфера применения Go, установка, настройка Ресурсы для изучения Go с нуля Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
← Часть 2 Ресурсы для изучения Go с нуля
Давайте напишем программу на Go, которая будет считывать имя пользователя и выводить сообщение с приветствием в консоль.
Первым делом создадим папку main/ и разместим там файл main.go , который будет содержать следующий код:
main/
main.go
package main // определили пакет main import "fmt" // импортировали пакет fmt // функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) }
Наша программа начинается со строки package main, которая определяет используемый пакет. В Go каждый программный файл должен быть частью какого-либо пакета.
package main
При разработке на Go нужно обязательно создавать файл с объявлением главного пакета package main и функции main(), потому что именно она задает точку входа в программу.
main()
Стоит помнить, что имя пакета должно соответствовать названию директории, в которой расположены его файлы. К примеру, если в папке application/ содержится файл server.go, то название пакета в нем должно быть package application.
application/
server.go
package application
В следующей строке происходит импорт пакета «fmt», который содержится в стандартной библиотеке языка и предназначен для форматирования ввода-вывода:
import "fmt" // импортировали пакет "fmt" для ввода-вывода
Для импорта несколько пакетов используют круглые скобки:
import ( "fmt" "strings" )
Стандартная библиотека языка содержит большое количество пакетов для часто используемых задач. К примеру, «fmt» используется для форматирования ввода-вывода, «strings» – для работы со строками. Для скачивания сторонних пакетов существует специальная команда go get <название пакета>
go get <название пакета>
Например, так можно скачать пакет lib/pq, содержащий драйвер для работы с СУБД PostgreSQL в Go:
lib/pq
go get github.com/lib/pq
?? Библиотека Go разработчика Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика» ? Библиотека Go для собеса Подтянуть свои знания по Go вы можете на нашем телеграм-канале «Библиотека Go для собеса» ? Библиотека задач по Go Интересные задачи по Go для практики можно найти на нашем телеграм-канале «Библиотека задач по Go»
Переходим к разбору строк, содержащих логику работы программы:
// функция для входа в программу func main() { var name string // объявили переменную name типа string fmt.Scan(&name) // считали переменную name с потока ввода // функция Print() печатает сообщение в консоль fmt.Print("Hello, ", name) }
Здесь происходит объявление функции main() с помощью ключевого слова func и вызов функций fmt.Scan() и fmt.Print() из ранее импортированного пакета"fmt". Первая из них отвечает за ввод данных с клавиатуры, а вторая – за вывод сообщения с переданными данными в консоль.
func
fmt.Scan()
fmt.Print()
"fmt"
Функции – это подпрограммы, позволяющие структурировать, упрощать и адаптировать написанный код. Они принимают входные параметры (аргументы) и после их обработки выдают требуемый результат.
Подробнее мы разберем функции в отдельном разделе, на текущем этапе главное — понять, что они отвечают за выполнение определенных задач, в нашем случае за запуск программы, считывание данных с клавиатуры и их вывод в консоль.
Модули в контексте языка Go — это коллекции пакетов и файлов конфигурации, которые обеспечивают управление зависимостями и версионирование проекта, а также решают проблемы, характерные для старой системы GOPATH. Они позволяют разработчикам создавать структурированные проекты и управлять версиями используемых библиотек.
Давайте инициализируем модуль в ранее созданной директории main/. Для этого нам понадобится команда go mod init:
go mod init
go mod init github.com/<ваш_ник_в_github>/main
Теперь в папке main/ должен появиться файл go.mod, в котором указаны все использованные модули и импортированные пакеты. Его содержимое будет выглядеть примерно так:
go.mod
module github.com/<ваш_ник_в_github>/main go 1.21.4 // здесь указана используемая в проекте версия go
В первой строке файла go.mod содержится название модуля, которое обычно дается по адресу расположения репозитория. Далее указывается минимальная совместимая версия Go, после чего следует список зависимостей. В нашем случае он пуст. Для его обновления нужно импортировать пакет с помощью команды go get , как это было показано ранее с lib/pq .
go get
На практике часто используется команда go mod tidy, которая помимо импорта загружает отсутствующие зависимости и удаляет лишние.
go mod tidy
Язык Go является компилируемым, то есть написанный на нём исходный код преобразуется в машинный и затем записывается в файл, исполняемый компьютером.
Компиляция – это процесс преобразования программы, написанной на языке программирования высокого уровня, в исполняемый машинный код, который может быть выполнен компьютером.
Компиляция позволяет предупредить возможные ошибки и оптимизирует исходный код, что хорошо сказывается на производительности программы.
В Go есть два способа запуска программ:
go run <имя_файла>.go
go build <имя_файла>.go
Скомпилируем нашу первую программу и посмотрим на полученный вывод. Для этого в консоли введем команду go build main.go, предварительно перейдя в ранее созданную директорию main/.
go build main.go
В результате в папке main/ должен появиться исполняемый файл main.exe (Windows) или main (Linux / MacOS). Чтобы его запустить, напишем в консоли main (Windows) или ./main (Linux / MacOS). В появившееся поле введем любую строку, пусть это будет user , после чего получим сообщение Hello, user, что свидетельствует об успешном выполнении кода.
main.exe
main
./main
user
Hello, user
В этом уроке мы на примере простой программы разобрали концепции программирования и принципы организации кода на Go, а также научились создавать модули и компилировать исходный код.
В следующем уроке узнаем о составных частях любой программы – переменных, основных операциях и типах данных.
***
Ваш адрес email не будет опубликован. Обязательные поля помечены *
Сохранить моё имя, email и адрес сайта в этом браузере для последующих моих комментариев.
Δ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.