Palestra: Programação funcional pura na JVM: técnicas, abstrações e quando quebrar o paradigma

Sala:

Dia da semana:

3:45pm - 4:35pm

Apresentação em Português

Nesta palestra, será explorada a programação puramente funcional na JVM, com uma visão prática dos principais conceitos envolvidos – de Monads a Monoids a Functors a outras abstrações. O foco será em entender porque essas técnicas são importantes e como podem ajudar no dia a dia, com base na experiência prática e exemplos extraídos de projetos reais.

Escrever de forma puramente funcional permite escrever código mais correto e testável, e evita que coisas demais aconteçam ao mesmo em cada trecho de código – aumentando a legibilidade e reduzindo a chance de efeitos colaterais indesejados. Por outro lado, código 100% funcional não é muito útil. Em algum momento teremos efeitos acontecendo – seja com inserções em bancos de dados, seja com chamadas a APIs remotas de um microservice – e teremos que "quebrar" a tal pureza. Este é outro tópico da palestra: onde e como fugir ao 100% funcional da melhor maneira.

Os exemplos apresentados irão utilizar Scala, que permite obter os benefícios da programação funcional sem deixar a JVM, além de trazer benefícios extras como tipagem estática e integração com APIs do Java. A maior parte dos conceitos abordados, porém, se aplica também a outras linguagens funcionais, como Clojure ou Haskell.

Tracks 2017

Segunda-feira

Terça-feira

Quarta-feira