Estudos gratuitos da ER Soluções WebVer outros conteúdos grátis
ER Soluções WebEstudos · Arquitetura Limpa

5. Programação Orientada a Objetos

O poder real da OO: polimorfismo para inverter dependências.

Seta de controle vai de A para B, mas a dependência de código aponta de B para a interface de A
Fluxo de controle → | ← dependência de código. Polimorfismo inverte.

Resumo

Perguntas-chave

responda de cabeça, depois abra
Qual a principal contribuição da OO para a arquitetura?
Polimorfismo seguro, que permite inverter dependências e criar arquitetura de plugins.
C tinha encapsulamento?
Sim, e perfeito: header com declarações, implementação escondida no .c. C++ e Java até enfraqueceram isso.
O que é inversão de dependência?
Fazer a dependência de código apontar contra o fluxo de controle, via interface no lado de alto nível.

Exercícios de fixação

0/5 respondidas
1.
Segundo o autor, qual característica é o verdadeiro poder da OO para a arquitetura?
2.
Um módulo de regras de negócio chama o banco de dados em tempo de execução. Com OO, como fazer o código do banco depender das regras e não o contrário?
3.
Por que o polimorfismo via ponteiros de função em C era considerado perigoso?
4.
Qual benefício direto a inversão de dependência traz para equipes?
5.
Sobre encapsulamento em C vs. C++/Java, o autor afirma que:
Seu progresso fica salvo neste navegador.