Привіт світ!

Привіт світ! #

Ось ми і дісталися до хвилюючого моменту - написання нашої першої програми. В світі розробки програмного забезпечення існує вже традиція поколінь. Перша програма повинна вивести на екран фразу “Hello, world!”. Як це зробити на Go? Для початку створімо нову теку. Назвемо, наприклад, hello. Всередині створімо текстовий файл hello.go за допомогою обраного і встановленого раніше редактору коду. Ви можете зазначити своє імʼя для файлу, головне що розширення в нього повинно бути .go Файл ми заповнимо таким вмістом:

package main

import "fmt"

func main() {
 fmt.Println("Hello, World!")
}

Ось і все! Наша перша програма написана, і тепер спробуємо її виконати. Для того щоби запустити виконання нашої програми у командному рядку у теці з нашим файлом виконайте команду: go run hello.go Ви повинні побачити Hello, World! у виводі.

Ми памʼятаємо що мова go є компільованою. А значить для запуску нам необхідно скомпілювати нашу програму. Та ми також памʼятаємо про переваги go. Одна з переваг - запуск програми прямо з вихідного коду, як в інтерпретованій мові. Щоправда, тут під капотом відбудеться компіляція і потім запуск.

Ось ми і написали нашу першу програму на go 🙂

Коментарі У коді нашої програми ми можемо використовувати коментарі. Коментарі - це текст, який не буде ніколи виконуватись. Він не попаде в зкомпільований файл. Потрібен він більше для нас, для того щоб написати пояснення якоїсь частини коду, документацію. Ще за допомогою коментарів ми можемо відключити виконання якусь частину коду, якщо ми не хочемо його видаляти зараз, поки альтернативну версію. Коментарі можуть бути одноряднові та много ряднові. Однорядові коментарі пишуться за допомогою двох косих рисок //. Все що написано після них у данному рядку буде вважатись коментарем.


// Це коментар
package main
import ("fmt")

func main() {
  // Це коментар
  fmt.Println("Hello World!") // і це також коментар
}

Ще коментарі могуть бути багаторядними. Такий коментар починається з символів коса риска та зірочка /* та закінчуються тими ж символами але у зворотній послідовності */

package main
import ("fmt")

func main() {
  /* Наведений нижче код буде виводити Hello World
  на екран, і це неймовірно */
  fmt.Println("Hello World!")

Як це працює?

Давайте розберемо кожний рядок для того щоби зрозуміти для чого потрібен нам кожен рядок нашої першої програми. У Go ми будемо організовувати наш код у так звані пакети. Тека hello, яку ми створили на самому початку і є наш перший пакет. У пакеті може бути як один так і декілька файлів. Програма може складатись із декількох пакетів. Пакет з назвою main є вхідною точкою в додаток. Він ідентифікує що цей пакет може бути перетворений у машинний код, тобто зкомпільований як додаток. Перший рядок нашої програми встановлення назви пакету: package main Назву пакету потрібно додавати до кожного файлу цього пакету. Це є обов’язковим.

Наступний рядок з кодом виглядає так: import “fmt” Ми використали ключове слово import для підключення потрібного нам пакету. fmt це вбудований пакет у самій мові Go. Він містить функції для форматованого вводу/виводу. В Go існує дуже велика стандатна бібліотека пакетів (https://pkg.go.dev/std) які містять набор різноманітних функцій - математичні, криптографічні, робота з зображеннями, з мережею, з файлами та багато іншого. Ви можете дізнатись про функції які надає пакет fmt у офіційній документації: https://pkg.go.dev/fmt

Наступним етапом буде створення функції main

func main() {

}

Процес яким ми позначаємо блок коду з назвою і ключовим словом func називається оголошенням функції. Функція - це блок коду, якому присвоєно ім’я і який містить певні інструкції. Більш детально ми поговоримо про них пізніше. Функція main є спеціальною системною функцією. Вона говорить де наша програма буде починати виконання. В нашому прикладі функція містить всього один рядок

fmt.Println("Hello, World!")

Це є зміст нашої функції. Ми використали тут функцію Println з пакету fmt і передали їй параметр - рядок “Hello, World!”. Для того щоб викликати функцію з пакету використовується так званий “крапка” синтаксис. Після того як рядок буде виконаний програма завершиться.