Entry Point
Main package
Пакет main
является специальным пакетом и может иметь свое имя вне зависит от имени содержащей его директории.
main
package is the entry-point package for executable programs.Programs start running function
main()
in packagemain
.Library packages are only reusable packages and don’t contain main package, and an entry-point (mostly).
If your
main
function doesn’t exist in packagemain
, the build tools won’t produce an executable.Main packages are not importable packages and you don’t need to export things from main package.
Init function
init
- это специальная функция, выполняющая до main
с целью установки значения пакета:
Function
init
is executed beforemain
.Each source file can define its own
init
function to set up whatever state is required.Each file can have multiple
init
functions.При первом импорте пакета в первый раз будут выполнены все его
init
функции.Никакой порядок не гарантируется при выполнении
init
функций.init
is called after all the variable declarations in the package have evaluated their initialisers, and those are evaluated only after all the imported packages have been initialised.
Last updated
Was this helpful?