Enviado em 23/12/2021 - 10:47h
Não sei se já repararam nisso, mmas a POO (programmação orientada a objetos) deixa alguns ttipos de programas altamente complexos.
Um exemplo claro disso são com jogos, não falo de joguinhos tipo pong e breakout, mas jogos mais profissionais.
Rapaz, reparei aqui na complexidade excessiva com pensar em objetos para jogos.
Por exemplo, é comum começar com uma classe base que serve tanto pro player quanto pra inimigos. Daí vai avançando e precisa adicionar classe pros itens, depois pros chefes e assim vai indo, até que se tenha um monstro em forma de código.
Recentemente descobri a programação orientada a dados, e com ela há uma possibilidade maior para jogos do que a limitação da POO.
Exemplo, é comum num jogo um certo código para uma classe ser necessário em outra classe. Usando OO você teria que adicionar o mesmo código numa classe base, para assim as derivadas terem acesso a ele. Isso é bem comum, porém, gera muita complexidade além de sobrecarregar a classe base com responsabilidades a mais.
Já com oriteação a dados, tudo é bem separado, dados da classe da lógica, o que faz com que qualquer elemento do jogo possa usar qualquer outro método/função de dados diferentes. É o mesmo que somar: Player = Renderizador + JumpAction + MoveAction + Controls. Diferente usando OO onde cada uma dessas propriedades seria um componente de uma classe.
Enfim, só quero dizer aqui que há limitações com POO que não são nada legais de se ter. Vou investir em desaprender a pensar com objetos e passar usar orientação a dados.
O que você acha disso? Concorda? Discorda?
Um exemplo claro disso são com jogos, não falo de joguinhos tipo pong e breakout, mas jogos mais profissionais.
Rapaz, reparei aqui na complexidade excessiva com pensar em objetos para jogos.
Por exemplo, é comum começar com uma classe base que serve tanto pro player quanto pra inimigos. Daí vai avançando e precisa adicionar classe pros itens, depois pros chefes e assim vai indo, até que se tenha um monstro em forma de código.
Recentemente descobri a programação orientada a dados, e com ela há uma possibilidade maior para jogos do que a limitação da POO.
Exemplo, é comum num jogo um certo código para uma classe ser necessário em outra classe. Usando OO você teria que adicionar o mesmo código numa classe base, para assim as derivadas terem acesso a ele. Isso é bem comum, porém, gera muita complexidade além de sobrecarregar a classe base com responsabilidades a mais.
Já com oriteação a dados, tudo é bem separado, dados da classe da lógica, o que faz com que qualquer elemento do jogo possa usar qualquer outro método/função de dados diferentes. É o mesmo que somar: Player = Renderizador + JumpAction + MoveAction + Controls. Diferente usando OO onde cada uma dessas propriedades seria um componente de uma classe.
Enfim, só quero dizer aqui que há limitações com POO que não são nada legais de se ter. Vou investir em desaprender a pensar com objetos e passar usar orientação a dados.
O que você acha disso? Concorda? Discorda?