Analise e desenvolvimento de sistemas com programação funcional

Poderiam me indicar algum livro sobre desenvolvimento de sistemas usando programação funcional?

É fácil encontrar livros sobre sistemas orientados a objetos, mas ainda não encontrei nenhum usando o paradigma funcional.

Structure and Interpretation of Computer Programs é um ótimo livro.

Perceba que programação funcional pode ser muito próximo de matemática/algebra. Se vc for usar Haskell, por exemplo, talvez precise de um formalismo maior na parte de análise. Isso pq vc vai expressar o seu programa de forma funcional, então se o seu domínio não é o exatamente matemático vc vai ter alguns desafios.

Por isso a literatura vai ser matemáticamente imersiva no geral. E abstrata. Mas vc quer resolver problemas como Inteligência Artificial, etc

Contudo vc ainda pode usar menos formalismo se, por exemplo, vc esta interessado em uma feature. Arquiteturas shared-nothing são notáveis pela escalabilidade e uma linguagem funcional usando tipos imutáveis podem ser uma alternativa - nesse caso uma parte do seu sistema pode ser Erlang (pense em Riak, RabbitMQ) e o resto usar OO.

Eu nao li este livro, mas assisti algumas palestras do autor e ele tem muito boa didática:

1 curtida

Vocês não conhecem algum que ensine a parte da modelagem? O livro que o @AbelBueno indicou é ótimo, mas o que eu procuro é algum que a partir de um determinado problema mostre e oriente como proceder para obter um software que resolva o problema. Tipo como os livros de engenharia de software fazem com poo: eles levantam um problema, colhem requisitos, fazem a modelagens dos casos de uso, determinam as entidades etc.

Mas é exatamente a mesma coisa. Você define o problema e cria um modelo a partir do blocos de construção que a linguagem te provê. Pra isso você precisa ter prática de como os problemas são resolvidos com linguagem funcional, usando recursão, imutabilidade, transformações, etc.

O livro que eu indiquei fala muito sobre isso, tem até o curso inteiro do MIT no YouTube.

1 curtida

Olha, eu não sei se o “funcional” que o livro cita é o mesmo que você está pensando, mas já trombei com este livro:

https://www.amazon.com/Functional-Object-Oriented-Analysis-Design/dp/1599042010