Package initialization begins by initializing package-level variables in the order in which they are declared,excepted that dependencies are resolved first.
If the package has multiple .go files,they are initialized in the order in which the files are given to the compilier
local level,package level ,file level scope vs lifetime
- scope is compile time propert
- lifetime is runtime property