Article image

TS

Thais Santos29/05/2024 14:52
Compartilhe

Programação orientada à objetos: O guia definitivo para iniciantes

  • #JavaScript
  • #POO

O que é programação orientada a objetos

Programação Orientada a Objetos (POO) é como brincar com bonecos de ação. Cada boneco (objeto) tem suas próprias características e habilidades. Em vez de escrever uma longa história, você cria pequenos personagens que interagem entre si.

Exemplos de linguagens em POO:

  • JavaScript
  • Java
  • Python
  • C++.

O que são um Objeto e uma Classe

Classe: Imagine a classe como uma receita de bolo. Ela diz o que você precisa e como fazer o bolo.

Objeto: O objeto é o bolo que você fez seguindo a receita. Cada bolo pode ser um pouco diferente, mas todos vêm da mesma receita.

O que compõe um objeto

Um objeto é como um carro de brinquedo. Ele tem atributos (como cor e tamanho) e métodos (como mover-se para frente ou buzinar). Por exemplo, um objeto "Carro" pode ter um atributo cor e um método acelerar().

Como usar uma classe em um objeto

Para criar um objeto a partir de uma classe em JavaScript, você usa a palavra new. Veja o exemplo:

class Carro {
constructor(cor) {
  this.cor = cor;
}
acelerar() {
  console.log('Vrum Vrum!');
}
}

const meuCarro = new Carro('vermelho');
meuCarro.acelerar(); // Saída: Vrum Vrum!

Os quatro pilares

POO tem quatro pilares principais que fazem tudo funcionar como mágica:

  • Abstração
  • Encapsulamento
  • Herança
  • Polimorfismo

Abstração

Abstração é como desenhar um super-herói. Você só desenha as partes mais importantes, como a capa e o símbolo no peito, sem se preocupar com todos os detalhes.

class Carro {
constructor(modelo) {
  this.modelo = modelo;
}
dirigir() {
  console.log('Vrum Vrum!');
}
}

Encapsulamento

Encapsulamento é como um cofre. Você guarda suas coisas preciosas (dados) dentro dele e só abre com a chave (métodos). Isso protege os dados de mudanças inesperadas.

class ContaBancaria {
constructor(saldo) {
  this._saldo = saldo; // O "_" indica que é privado
}
depositar(valor) {
  this._saldo += valor;
}
verSaldo() {
  return this._saldo;
}
}

const minhaConta = new ContaBancaria(100);
minhaConta.depositar(50);
console.log(minhaConta.verSaldo()); // Saída: 150

Herança

Herança é como você herdar características dos seus pais. Em POO, uma classe pode herdar atributos e métodos de outra classe.

class Animal {
dormir() {
  console.log('Zzz...');
}
}

class Cachorro extends Animal {
latir() {
  console.log('Au Au!');
}
}

const meuCachorro = new Cachorro();
meuCachorro.dormir(); // Saída: Zzz...
meuCachorro.latir(); // Saída: Au Au!

Polimorfismo

Polimorfismo é como um camaleão que muda de cor. Objetos podem se comportar de maneiras diferentes, mesmo que compartilhem o mesmo nome de método.

class Passaro {
emitirSom() {
  console.log('Piu Piu!');
}
}

class Gato {
emitirSom() {
  console.log('Miau!');
}
}

const meuPassaro = new Passaro();
const meuGato = new Gato();

meuPassaro.emitirSom(); // Saída: Piu Piu!
meuGato.emitirSom(); // Saída: Miau!

Conclusão

Gostou do artigo? Ele foi gerado por inteligencia artificial, mas revisado por humano. Me Siga no Linkedin.

Fontes de Produção

  • Ilustrações de capa gerada pela lexica.art
  • Conteúdo gerado pelo ChatGPT e revisão humana

#Programação #Tecnologia #Desenvolvimento

Compartilhe
Comentários (0)