2
respostas

State no banco

como seria para implementar o padrão state para salvar\recuperar no banco de dados?

2 respostas

Oi Pedro, tudo bom?

Normalmente usamos o State para controlar os estados de um objeto.

A principal situação que faz emergir o Design Pattern State é a necessidade de implementação de uma máquina de estados. Geralmente, o controle das possíveis transições são vários e complexos, fazendo com que a implementação não seja simples. O State auxilia a manter o controle dos estados simples e organizados através da criação de classes que representem cada estado e saiba controlar as transições.

Normalmente, o que persistimos para o banco são dados estaveis. Ou seja, independente do estado, você salvará seu objeto pois aquele estado é o que você quer guardar.

Resumidamente, é meio contraditorio guardar estados do objeto no banco pois a variação de estados ocorre na memoria e no banco guardamos apenas as informações "prontas".

então o PHP não é uma linguagem muito boa para certos padrões de projetos, ja que ele é uma linguagem scriptada e não tem o dinamismo para os estados serem mudados em segunda ordem, linguagens dinâmicas com execução em tempo real seriam melhores para certos padrões como state que conseguem "guardar" o estado do objeto e persistir no banco quando o estado estiver "pronto"... é isso?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software