Sobes.tech
Junior — Middle

Qual é o papel do princípio de inversão de controlo no contexto do Spring Framework?

sobes.tech IA

Resposta da IA

O princípio de inversão de controlo (IoC) no Spring Framework significa que o controlo da criação e ligação de objetos é transferido para o contêiner Spring, em vez de ser implementado manualmente no código. Isto permite separar a configuração e gestão de dependências da lógica de negócio, facilitando testes e manutenção.

Em vez de criar objetos diretamente, o desenvolvedor descreve as dependências, e o Spring as injeta automaticamente (através da Injeção de Dependências). Por exemplo, a classe não cria as suas dependências, mas as recebe de fora.

Exemplo de injeção de dependências através do construtor no Spring:

@Component
public class UserService {
    private final UserRepository userRepository;

    @Autowired
    public UserService(UserRepository userRepository) {
        this.userRepository = userRepository;
    }

    // métodos de negócio
}

Aqui, o Spring criará e passará automaticamente o UserRepository necessário ao criar o UserService.