package main import ( "controle-de-estoque/internal/cli" inmemory "controle-de-estoque/internal/repository/in_memory" "controle-de-estoque/internal/service" ) func main() { // Aqui é o único lugar que "conhece" todas as camadas. // Para trocar a persistência (ex: Postgres, arquivo JSON), // basta trocar esta linha por outra implementação de // repository.InventoryRepository — nada mais muda. repo := inmemory.NewInventorytRepository() svc := service.NewInventoryService(repo) app := cli.NewApp(svc) app.Run() }