Capítulo 11: Orientação a Objetos (Classes e Objetos) 🤖🌆

Neste capítulo, vamos dar os primeiros passos na Programação Orientada a Objetos (POO), aprendendo a criar nossas próprias “formas” (Classes) e “produtos” (Objetos), com o tema Cyberpunk 2077!


📖 O que é POO e Classes?

A Orientação a Objetos tenta simular o mundo real no código.

  • Classe: É o molde, a planta baixa (ex: o projeto de um ciborgue).
  • Objeto: É a instância física criada a partir do molde (ex: um ciborgue específico como o V ou o David).

Veja a representação da nossa classe:

classDiagram
    class Mercenario {
        +nome
        +apelido
        +reputacao
        +exibir_status()
    }

📖 Exemplo Guiado: Criando um Mercenário

Vamos criar uma classe Mercenario com nome, apelido e nível de reputação.

  1. Crie o arquivo cyberpunk.py na pasta src/:
# Definindo a classe
class Mercenario:
    # Método construtor (inicializa os dados)
    def __init__(self, nome, apelido, reputacao):
        self.nome = nome
        self.apelido = apelido
        self.reputacao = reputacao
 
    # Um método (ação) da classe
    def exibir_status(self):
        print(f"Mercenário: {self.apelido} (Nome real: {self.nome}) | Reputação: {self.reputacao}")
 
# Criando objetos (instâncias)
v = Mercenario("Vincent", "V", 50)
david = Mercenario("David Martinez", "Sandevistan Boy", 40)
 
# Usando os objetos
v.exibir_status()
david.exibir_status()

🕹️ Como Executar e Testar no VS Code

  1. Abra o arquivo cyberpunk.py.
  2. Clique no botão Run Python File.

Resultado Esperado:

Mercenário: V (Nome real: Vincent) | Reputação: 50
Mercenário: Sandevistan Boy (Nome real: David Martinez) | Reputação: 40

🛠️ Prática Obrigatória 1: Implante Cibernético

Crie um programa chamado implante.py com uma classe Implante contendo nome, parte do corpo e custo. Crie dois objetos de implantes diferentes (ex: “Olhos Kiroshi” e “Braços Gorila”) e exiba seus dados chamando um método exibir_dados().


🛠️ Prática Obrigatória 2: Sistema de Hack

Crie um programa chamado hack.py com uma classe Quickhack contendo nome e consumo de memória (RAM). Adicione um método executar() que exiba uma mensagem dizendo que o hack está sendo aplicado.


🔑 Gabarito de Código

Prática 1: implante.py

class Implante:
    def __init__(self, nome, parte, custo):
        self.nome = nome
        self.parte = parte
        self.custo = custo
 
    def exibir_dados(self):
        print(f"Implante: {self.nome} | Local: {self.parte} | Custo: {self.custo} €$")
 
i1 = Implante("Olhos Kiroshi", "Olhos", 1500)
i2 = Implante("Braços Gorila", "Braços", 3000)
 
i1.exibir_dados()
i2.exibir_dados()

Prática 2: hack.py

class Quickhack:
    def __init__(self, nome, ram):
        self.nome = nome
        self.ram = ram
 
    def executar(self):
        print(f"Executando {self.nome}... Consumindo {self.ram} de RAM!")
 
h1 = Quickhack("Curto-Circuito", 4)
h2 = Quickhack("Superaquecimento", 6)
 
h1.executar()
h2.executar()

📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

(Siga o mesmo padrão do Capítulo 01)


Capitulo Anterior | Proximo Capitulo