Ответ
Пакеты в Go — это способ организации кода. Каждый пакет — это отдельная директория с .go файлами, объединёнными общей функциональностью.
- Импорт: пакеты подключаются через
import "путь/к/пакету". - Видимость: идентификаторы с заглавной буквы экспортируются (публичные), со строчной — приватные.
main: особый пакет, точка входа программы (функцияmain()).
Пример:
// math/math.go
package math
func Add(a, b int) int { // Экспортируемая функция
return a + b
}
func internalCalc() int { // Приватная функция
return 42
}
// main.go
package main
import (
"fmt"
"your/module/math" // Импорт своего пакета
)
func main() {
sum := math.Add(2, 3) // Вызов экспортируемой функции
fmt.Println(sum) // 5
// math.internalCalc() // Ошибка: приватная функция!
}
Пакеты компилируются в статические библиотеки, что ускоряет сборку.