Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Significado de anemia em programação

Bom dia

Não consegui entender o conceito de anemia relacionado a tuplas e objetos.

2 respostas

Olá Marcos.

O motivo do instrutor tratar desse assunto é por conta desse trecho de código:

def deposita(conta):  # variação "funcional"(separando o comportamento dos dados)
    novo_saldo = conta[1] + 100
    codigo = conta[0]
    return (codigo, novo_saldo)

O instrutor está separando de um lado os dados e do outro o comportamento desses dados:

Os dados => conta que ele passa por parâmetro.

O comportamento => o código que modifica o dado recebido dentro da função.

Isso não está necessariamente errado, mas sim depende do projeto que está fazendo. O oposto a um modelo anêmico são os modelos ricos, onde você atrela métodos que manipulam os atributos (orientação a objetos).

Recomendo a leitura desse ótimo artigo, onde entendemos melhor o que é um modelo anêmico e os malefícios de programar assim.

Mas se ficou alguma duvida não hesite em perguntar.

Bons Estudos.

solução!

Bom dia Igor

Então o código que separa os dados e o comportamento torna a arquitetura frágil/ pobre!? Porém aplicável quando a orientação a objetos não é necessária.

Obrigado!