Article image
Emmanuel Andrade
Emmanuel Andrade26/05/2023 11:59
Compartilhe

Programação Orientada a Objeto (POO) em Python

  • #Python

Se você já ouviu falar sobre programação orientada a objetos (POO) em Python, mas ainda não entendeu exatamente como isso funciona, chega mais que eu te explico! A POO é bastante versátil quando aplicada em nossos programas, como se fossem mini universos cheios de objetos interagindo entre si.

Vou tentar explicar sem jargões complicados e sem enrolação!

1. O que são objetos?

Imagine que você está construindo um carro de brinquedo. O carro tem rodas, uma carroceria, faróis e pode se mover para frente e para trás. Agora, pense em um objeto como uma versão virtual desse carro de brinquedo. Ele tem características (como cor, modelo e tamanho) e pode realizar ações (como acelerar, frear e ligar os faróis). Em Python, podemos criar esses objetos usando classes.

2. Criando uma classe:

Uma classe é como um molde que define como um objeto será criado. Vamos criar uma classe "Carro" para representar nosso carro de brinquedo.

Exemplo:

class Carro:
def __init__(self, cor, modelo):
  self.cor = cor
  self.modelo = modelo

def acelerar(self):
  print(f"O {self.modelo} está acelerando!")

def frear(self):
  print(f"O {self.modelo} está freando!")

meu_carro = Carro("vermelho", "Fusca")

Aqui, definimos a classe "Carro" com um método especial chamado "__init__". Esse método é executado automaticamente quando um novo objeto da classe é criado e nos permite definir as características iniciais do objeto. No nosso exemplo, passamos a cor e o modelo do carro ao criar um novo objeto.

3. Acessando atributos e métodos:

Agora que temos nosso objeto "meu_carro", podemos acessar seus atributos (cor e modelo) e executar seus métodos (acelerar e frear).

Exemplo:

print(meu_carro.cor) # Saída: vermelho
print(meu_carro.modelo) # Saída: Fusca
meu_carro.acelerar() # Saída: O Fusca está acelerando!
meu_carro.frear() # Saída: O Fusca está freando!

Eita!! Agora o carro está em movimento! Podemos facilmente acessar seus atributos usando a notação de ponto (objeto.atributo) e chamar seus métodos (ações) da mesma forma.

4. Adicionando mais funcionalidades:

Vamos tornar nosso carro ainda mais legal adicionando alguns recursos extras, como ligar e desligar os faróis.

Exemplo:

class Carro:
def __init__(self, cor, modelo):
  self.cor = cor
  self.modelo = modelo
  self.farois_ligados = False

def acelerar(self):
  print(f"O {self.modelo} está acelerando!")

def frear(self):
  print(f"O {self.modelo} está freando!")

def ligar_farois(self):
  self.farois_ligados = True
  print("Faróis ligados!")



def desligar_farois(self):
  self.farois_ligados = False
  print("Faróis desligados!")
meu_carro = Carro("vermelho", "Fusca")
meu_carro.ligar_farois() # Saída: Faróis ligados!
print(meu_carro.farois_ligados) # Saída: True
meu_carro.desligar_farois() # Saída: Faróis desligados!
print(meu_carro.farois_ligados) # Saída: False

Agora nosso carro pode ligar e desligar os faróis! Adicionamos os métodos "ligar_farois" e "desligar_farois" à nossa classe "Carro". Eles modificam o atributo "farois_ligados" para controlar o estado dos faróis.

Em resumo, a programação orientada a objetos em Python nos permite criar programas mais organizados e reutilizáveis. Com as classes e objetos, podemos modelar nossos programas de forma mais próxima à vida real, com objetos interagindo entre si. Espero que você tenha gostado dessa introdução descontraída à POO em Python. Agora você pode aplicar esses conceitos para criar seus próprios objetos incríveis e explorar um novo mundo de possibilidades na programação!

Compartilhe
Comentários (2)

RS

Reginaldo Silvacosta - 07/06/2023 10:17

Muito bom.

Victor Silva
Victor Silva - 27/05/2023 01:18

muito bomm, ta bem explicado e intuitivo.