Sobes.tech
Junior — Middle

Czy możesz wyjaśnić cel funkcji init() w kontekście programowania?

sobes.tech AI

Odpowiedź od AI

W języku Go funkcja init() służy do inicjalizacji pakietu przed uruchomieniem głównego programu. Jest wywoływana automatycznie raz podczas ładowania pakietu, przed wywołaniem funkcji main().

Cel init():

  • Inicjalizacja zmiennych, stałych lub struktur wymagających złożonej logiki.
  • Konfiguracja stanu pakietu, np. rejestrowanie obsługi lub łączenie się z zasobami.

Przykład:

package main

import "fmt"

var config string

func init() {
    config = "initialized"
    fmt.Println("init called")
}

func main() {
    fmt.Println("main called")
    fmt.Println("config:", config)
}

Wynik będzie wyglądał tak:

init called
main called
config: initialized

W ten sposób init() pomaga przygotować środowisko przed rozpoczęciem głównej logiki programu.