Olá Filipe! obrigado por comentar e pelas perguntas.
O pacote fmt
é padrão da linguagem, é como fazer o require("path")
com node.
A diferencia entre o package
e import
é que todo arquivo Go precisa informar na primeira linha qual o nome do pacote que esse codigo pertence. O import
é exatamente o que o require
do js faz, importa pacotes (libs).
Por exemplo: eu crio uma pasta chamada ola
e dentro um arquivo ola.go
. O package serve exatamente pra nomear esse pacote. No arquivo ola.go
na primeira linha eu informa qual o nome do pacote desse arquivo.
package ola
import "fmt"
func Mundo() {
fmt.Println("Olá, mundo!")
}
No arquivo main.go
eu consigo importar esse pacote utilizando o import
package main
import "nome-do-modulo/ola"
func main() {
ola.Mundo()
}
Obs: pra criar um pacote e utilizar é preciso inicializar o modulo no projeto assim:
go mod init nome-do-modulo