Изучаем язык программирования Go (Урок 1) - Введение и Hello World
Друзья, я возвращаюсь к своему блогу на голосе, для того чтобы начать новый курс по языку Go.
Мой предыдущий курс был посвящен разработке соцсети на PHP, а перед этим я рассказывал о сетевой архитектуре и протоколам передачи данных в интернете. В принципе получилось неплохо. Однако этот курс будет еще интереснее. За прошлый год я изучил язык Go, и целью моего изучения было научиться писать собственные блокчейн-проекты на языке программирования Go. Именно те, которые как бы с нуля. С подобными знаниями можно реализовать все что подскажет фантазия – от своей криптовалюты, до супер современного децентрализованного сервиса, при этом он будет использовать собственный протокол, работающий поверх TCP, а также использовать возможности параллелизма. Всему этому я планирую научить читателей, но в порядке от простого к сложному, так как предполагаю, что не все знакомы с этим языком.
Коротко о Go.
Go представляет возможность писать программы, которые по функционалу можно сравнить с написанными на C++. Однако в нашем случае мы уже имеем встроенные возможности, такие которые в C++ находятся в виде библиотек. Также в языке Go более лаконичный синтаксис, что позволит сократить время на написание исходного текста программы. А основное что больше всего нравится программистам в Go – возможности параллелизма. Многопоточные программы на этом языке писать проще и они более надежные, по сравнению с потоками в других языках. Таким образом это на мой взгляд наиболее удобный инструмент для создания нашего интернет-блокчейн проекта.
Структура статей курса
Структура будет такая же как и у курса PHP: один раздел теории и ниже раздел практики – пример кода.
Установка необходимых программ
Для работы на данный момент нам понадобятся 2 программы:
Собственно сам Go: https://golang.org/dl/
А также текстовый редактор. Вы можете использовать какой нравится, а я предпочитаю Visual Studio Code: https://code.visualstudio.com
Кстати на сайте https://golang.org вы можете тестировать код даже ничего не скачивая. Дело в том, что там встроен web-компилятор, который прекрасно подойдет для экспериментов, пока мы не начнем изучение более сложных вещей.
Тут все очень просто. 1) развернем область редактора во весь экран. 2) После ввода кода нажимаем Run.
Теперь давайте напишем первую программу. Она по сути уже написана на сайте, о котором я только что упомянул. Но традиции не будем изменять.
После установки этих двух программ в Visual Studio Code создадим новый файл:
А затем в новом файле пишем:
package main
import (
"fmt"
)
func main() {
fmt.Println("Привет, Голос!")
}
Для запуска в нижней части окна выбираем вкладку "Терминал" и вводим
go run filename.go
где filename - название созданного нами файла.
При разработке программ мы сами придумываем названия пакетов и функций, кроме одного исключения, которые мы видим в данном коде: Чтобы программа стало программой, а не простым набором функций, то есть чтобы ее наш компьютер смог запустить мы должны выполнить две вещи:
- Назвать пакет main (pakage main)
- Определить функцию main – именно с нее начинается выполнение программы.
В разделе кода после первой строки с названием нашего пакета мы импортируем другие пакеты, функции из которых мы будем использовать в нашей программе. И кстати, если мы импортировали пакет, то обязательно должны использовать хотя бы одну из его функций, иначе будет ошибка при компиляции – go не любит когда в коде что-то лишнее и ненужное.
Мы импортировали пакет fmt, который содержит функции для форматированного вывода и воспользовались его функцией Println таким образом:
fmt.Println("Привет, Голос!")
Это выводит в стандартный вывод Привет, Голос!". Как можно заметить мы не пишем точку запятой после оператора, в этом языке перевод строки уже ее подразумневает, опять же – борьба с лишним в коде. Язык разработан очень лаконичным и в следующей статье мы изучим переменные и типы.