Todos os posts

Os Quatro Pilares OOP

18/04/2026 20 views

"Como aluno, eu entendi que Classes são plantas. Agora, como eu construo algo realmente profissional, seguro e fácil de crescer?"

Os 4 Pilares da
Engenharia de Software

List<Maquina> oficina = new List<Maquina>();
oficina.Add(new Robo());
oficina.Add(new Drone());

foreach (var m in oficina) {
    m.Ligar(); // Cada um liga de um jeito!
}

1. Abstração: O Essencial

Abstrair é "limpar" o objeto de detalhes irrelevantes para o sistema. Pense em um Carro: para o motorista, o que importa é o volante e os pedais, não a pressão interna de cada cilindro.

2. Encapsulamento: Blindagem de Dados

O Encapsulamento protege o estado interno do objeto. Usamos **Modificadores de Acesso** para impedir que dados sensíveis sejam alterados de fora indevidamente.

3. Herança: Reuso e Hierarquia

A Herança permite que uma classe herde o comportamento de outra. É o mecanismo fundamental de compartilhamento de código em POO.

Implementação

public class Funcionario { public string Nome { get; set; } }

public class Gerente : Funcionario 
{ 
    public int NivelAcesso { get; set; } 
}

4. Polimorfismo: Flexibilidade Dinâmica

O Polimorfismo é a cereja do bolo. Ele permite tratar objetos de tipos diferentes através de uma interface comum, garantindo que cada um execute sua própria lógica.

Exemplo Polimórfico

List<Maquina> oficina = new List<Maquina>();
oficina.Add(new Robo());
oficina.Add(new Drone());

foreach (var m in oficina) {
    m.Ligar(); // Cada um liga de um jeito!
}

5. Lab Final: Sistema de Pagamentos

Neste desafio, você deve ler o código abaixo e identificar os 4 pilares em ação. Este é o padrão usado em grandes sistemas financeiros.

PagamentoSystem.cs

public abstract class MetodoPagamento { public abstract void Processar(); }

public class Cartao : MetodoPagamento 
{
    private string _numeroCartao; // Encapsulamento
    public override void Processar() { Console.WriteLine("Validando cartão..."); }
}

public class Pix : MetodoPagamento 
{
    public override void Processar() { Console.WriteLine("Gerando QR Code..."); }
}

Saída - Simulação de Fluxo

> Executando Lista de Pagamentos...

Validando cartão... (Cartão detectado)

Gerando QR Code... (Pix detectado)

Processamento Finalizado via Polimorfismo.

🏆 Você Dominou os Pilare
Publicidade

Comentários (0)

Nenhum comentário ainda. Seja o primeiro!

Faça login para comentar. Sem conta? Criar agora.