Executando verificação de segurança...
2

Excelente! Deu até saudades das aulas de automatos agora!

Na minha época de faculdade, a maior parte dos meus colegas não se importavam com automatos, achavam chato e inútil. Mas isso foi a solução para um grande problema que enfrentei uma vez no trabalho.
O sistema que estavamos desenvolvendo gerava fluxo de caixa com base nas compras e vendas do comércio, e tinha uma funcionalidade que chamávamos de 'campos lógicos', a função desses campos era permitir que o usuário criasse uma fórmula personalizada para uma linha do fluxo de caixa dele, podendo fazer calculos usando linhas anteriores ao fluxo ou buscando dados de alguma tabela do banco. Nossa primeira implementação, foi antes de eu ter aulas de automatos, e naturalmente, fiz a validação cheia de IFs, FORs e afins, horrível de se ver, e com um desempenho terrível, levava quase 3h para executar um fluxo de caixa com 1 milhão de linhas...Depois das aulas de automatos, reescrevi o código fazendo um automato finito. O código ficou muito mais legível e eficiente, o mesmo fluxo de caixa passou a ser executado em menos de dois minutos. E isso me fez aprender outros termos ainda, muito interessantes, como Dynamic Branch Prediction, que é muito implementado em compiladores e tem um impacto gritante no desempenho das aplicações...

Carregando publicação patrocinada...
1

Sensacional sua solução, muitas pessoas da minha turma simplesmente negligenciam muitas matérias, "Não vou precisar disso", "faculdade com grade desatualizada", já eu sempre tentei enxergar de um modo diferente, tentar aprender o que não se acha com facilidade na internet, hoje muitas pessoas se perguntam sobre o chatGPT, mas não sabem ao menos o que é um reconhecedor de cadeias, e eu não estou nem me referindo a pessoas que estão começando, mas pessoas que já passaram por um nível superior, e às vezes até já tiveram aulas de autômatos.