1 Что вы узнаете из этой главы?
- Напишите простую программу на Go
- Скомпилировать программу
1.1 Рассматриваемые технические концепции
- Технические характеристики
- Сборник
- Бинарный / исполняемый файл
2 Введение
В этой главе мы напишем два наших первых приложения Go.
3 Спецификация приложения
Прежде чем писать какой-либо код, нам нужно решить, что будет делать наше приложение. Большинство проектов начинаются с этой фазы. Это называется этапом спецификации. Он направлен на создание точных требований, которым должно соответствовать приложение. Эти требования являются спецификациями (или спецификациями).
Спецификация нашего приложения проста: при запуске приложение должно отображать дату и время и завершаться.
4 Каталог проекта
Приложение Go состоит из файлов. В этих файлах мы напишем код Go. Мы называем эти файлы « исходными файлами ». Приложение хранится в основном каталоге. Этот основной каталог может содержать только один исходный файл. В большинстве случаев он состоит из нескольких подкаталогов.
Мы создадим этот основной каталог для нашего приложения. Вы можете сделать это с помощью командной строки (или с помощью графического интерфейса вашей системы):
$ cd Documents/code $ mkdir dateAndTime
5 интегрированная среда разработки
Мы всего в нескольких минутах от написания кода. Вам нужно специальное программное обеспечение для написания кода Go? Теоретически вы можете писать код с помощью стандартного текстового редактора. На рынке есть специализированное программное обеспечение, специально разработанное для разработчиков. Они называются IDE: интегрированная среда разработки.
IDE предоставляет такие функции, как:
- Автоматическое окрашивание зарезервированных слов (подсветка синтаксиса)
- Автодополнение
- Возможности рефакторинга
- ...
Их много IDE на рынке. Вы можете поискать в Google, чтобы найти наиболее подходящий для вас. Я использую Goland, который разрабатывает IntelliJ. Это программное обеспечение не бесплатное (оно предоставляется по подписке), но мне кажется, им легко пользоваться.
6 Исходный файл
Давайте создадим наш исходный файл. Мы назовем его main.go.
// first-go-application/first/main.go
package main
import ("fmt"
"time"
)
func main() {
now := time.Now()
fmt.Println(now)
}
6.0.0.1 Объяснение кода
- Первая строка обязательна в Go. Во все файлы необходимо добавить объявление пакета . Такое объявление состоит из ключевого слова package и имени пакета.
- Во второй строке вы можете прочитать другое ключевое слово: импорт. Обычно за ним следует открывающая скобка и список импортированных пакетов программы. Каждый пакет записывается с новой строки. Каждый пакет имеет имя, заключенное в двойные кавычки. Здесь наше приложение зависит от двух пакетов:
ФМТ
время - Эти пакеты являются частью стандартной библиотеки.
- Затем вы найдете объявление функции с именем main . Позже мы углубимся в синтаксис функций.
Объявление функции заключено в фигурные скобки: { и } .
Внутри объявления функции у нас есть два оператора:
Первая инструкция — аффектация. Мы инициализируем переменную « now » и присваиваем ей значение, возвращаемое вызовом функции Now() из времени пакета .
Вторая инструкция — это вызов функции Print из пакета fmt. - ПРЕДУПРЕЖДЕНИЕ! убедитесь, что вы используете только те пакеты, которые действительно импортируете. В противном случае ваша программа не скомпилируется... Когда вы используете не импортированный пакет, ваша программа Go не будет компилироваться
- Убедитесь, что вы используете импортированные пакеты. В следующем примере кода я импортирую пакет fmt, timeно не использую его в своей mainфункции:
// DO NOT COMPILE // first-go-application/import-issue/main.go
package main
import ("fmt"
"time"
)
func main(){
}
6.0.0.2 Об основной функции
Основная функция — точка входа в программу. В каждом приложении у вас есть хотя бы одна основная функция. Программа начнется с первого оператора этой функции. (Обратите внимание, что в C, C++, Java существует концепция основной функции).
7 Компиляция
Исходный файл готов к преобразованию в двоичный (или исполняемый). Для этого мы будем использовать набор инструментов Go. Откройте терминал:
$ cd Documents/code/dateAndTime $ go build main.go
Первая инструкция (cd) указывает оболочке изменить текущий каталог на Documents/code/dateAndTime . Эта команда скомпилирует программу в исполняемый файл. Исполняемый файл называется main (то же имя, что и исходный файл, но без расширения .go). Давайте посмотрим, какие файлы теперь находятся в нашем каталоге dateAndTime:
$ ls -lh total 4160 -rwxr-xr-x 1 maximilienandile staff 2.0M Aug 16 11:27 main -rw-r--r-- 1 maximilienandile staff 94B Aug 16 11:00 main.go
Мы используем команду ls . (для пользователя Windows вы можете использовать команду dir ). Вы можете видеть, что у нас есть два файла:
- main , который весит 2.0M (мегабайты) и является исполняемым.
- main.go , который весит всего 94 байта. (это наш исходный файл).
Теперь пришло время запустить наше приложение:
$ ./main
2019-08-16 11:45:44.435637 +0200 CEST m=+0.000263533
Поздравляем с первым приложением Go!