Quando o exercício fala em dados e comportamentos andam juntos, esta se referindo a atributos e métodos? propriedade = atributos = estado; métodos = operações = comportamento;
Conceitos que não foram mencionados.
Quando o exercício fala em dados e comportamentos andam juntos, esta se referindo a atributos e métodos? propriedade = atributos = estado; métodos = operações = comportamento;
Conceitos que não foram mencionados.
Quando diz que Dados e Comportamento andam juntos no meu entender é que para aplicar Orientação a Objetos você precisa ter de maneira bem clara o que é de que/quem.
Assim tendo as Classes com suas Funcionalidades claras facilitando a manutenção e uso do código assim como diminuindo repetições.
O Dado seria o que a Classe representa.
O Comportamento seria o que a Classe faz.
Por exemplo; Eu sou dono de uma concessionária, sendo assim eu posso criar uma Classe chamada Carro, onde sempre que eu tiver um tipo (n sei se é tipo que fala, n sei mtu de carros) de carro novo para ser vendido eu crio ele com a classe:
class Carro:
def __init__(self, nome, ano, marca, estoque):
self.nome == nome
self.ano == ano
self.marca == marca
self.__estoque = estoque
@property
def estoque(self):
return self.__estoque
def aumenta_estoque(self, valor):
self.__estoque += valor
def vendido(self, quantidade):
if carros_vendidos() > 0:
vendas = carros_vendidos()
self__estoque -= vendas
print("Estoque alterado com sucesso")
else:
print(f"Nenhum {self.nome} foi vendido até dado momento")
# Exemplo de carro novo:
carro_novo = Carro("Gol", 2009, "Volkswagen", 10)
Mas essa classe não tem todas as informações que um carro especifico que um cliente quiser vai ter, essas informações vão ficar em uma subclasse* que tem funções mais específicas como cor, km's, se vai ter ou não alguma custumização, entre outras coisas.
*Você vai ver sobre subclasses no próximo curso se não me engano
Então os Dados
da Classe Carro são o nome, ano, marca e estoque do carro que você criar.
Os Comportamentos
da classe Carro é reduzir ou aumentar o estoque conforme as vendas.
Ambos estão juntos e "ligados" dentro da Classe Carro. Se você faz um código procedural não vai ter um relacionamento direto entra cada um dos comportamentos e os dados.
Lembre sempre que cada uma tem suas vantagens e desvantagens :)