GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Analise e desenvolvimento de sistemas com programação funcional

programação
Tags: #<Tag:0x00007ffac2d3db90>

#1

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.


#2

#3

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


#4

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.


#5

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


#6

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.


#7

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.