Найти тему
Golang-news

Глава 5: Первое приложение на Golang

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!