Everton Quadros

Software Developer

© 2020

Primeiros passos com Clojure!

Nesse período de quarentena, tenho ficado mais tempo em casa e aproveitado pra estudar algumas coisas legais. Uma delas é o Clojure, um dialeto variante da linguagem Lisp e, portanto, predominantemente funcional. Neste post, quero compartilhar com vocês o material que estou usando para dar meus primeiros passos na linguagem.

Como dito acima, Clojure é uma linguagem de programação variante do Lisp. Em outras palavras: parênteses intermináveis e sintaxe esquisita. Ela é executada pela JVM (apesar de existirem outras implementações) e preza pelo princípio da imutabilidade e por estruturas de dados persistentes, o que facilita a criação de sistemas concorrentes e torna o código bem mais previsível. Como uma variante do Lisp, possui um console interpretador (repl) semelhante ao do Ruby (irb). Grandes empresas como Netflix, Nubank, eBay e Adobe utilizam o Clojure. Você pode conferir a lista completa aqui.



Primeiro, vale comentar que em ClojureDocs.org e em Clojure.org você encontra a documentação, referências úteis e vários exemplos de uso da linguagem. Além disso, o uso da IntelliJ IDE em conjunto com o plugin Cursive irá facilitar bastante o desenvolvimento dos seus projetos em Clojure.

Se, assim como eu, você gosta de aprender novas linguagens através da resolução de problemas, recomendo o Clojure Koans, um repositório do GitHub com vários exercícios de Clojure. Para iniciar os desafios, você precisará instalar a JDK e o Leiningen. Em seguida, basta clonar o repositório e rodar o koans usando o comando:

$ lein koan run

Outra opção divertida é o 4Clojure. Lá, você encontra exercícios interativos em vários níveis. Basta fazer o cadastro e iniciar os desafios online!

Também recomendo o WonderLand Clojure Katas e o Parens of the Dead. O primeiro é um conjunto de exercícios de Clojure inspirado no mundo de Alice in Wonderland. Já o Parens of the Dead é um screencast de jogos com temática de zumbis, escritos em Clojure e ClojureScript.

Além dos repos e ferramentas citados acima, o livro Clojure for the Brave and True está disponível gratuitamente neste link. Ele possui tópicos que vão desde a configuração do ambiente até temas mais avançados da linguagem, como programação paralela e concorrente usando Clojure. Caso prefira, você pode comprar uma cópia do livro no site da Amazon.

No ClojureBridge, é possível encontrar workshops gratuitos de programação Clojure para iniciantes em grupos sub-representados na tecnologia. No ano passado, inclusive, eles organizaram um workshop na minha cidade natal, Salvador, voltado para a população negra.

No YouTube, encontrei esse curso de introdução ao Clojure ministrado por Mats Gisselson. Alguns cursos online pagos também estão disponíveis na Udemy, mas ainda não me inscrevi em nenhum deles.

Para finalizar, deixo esse desafio de ClojureScript (versão do Clojure que compila para JavaScript) do ClojureScript Koans para vocês se divertirem.

É isso, espero que tenham gostado! Se cuidem, e #fiquememcasa! 😉