Visão Geral
Curso Clojure Overview Clojure é uma linguagem de programação expressiva e dinâmica otimizada para alta confiabilidade e frescor. Clojure é um dialeto Lisp moderno e é executado na Java Virtual Machine. Este curso fornecerá as habilidades essenciais para ajudá-lo a começar a usar o Clojure. Você aprenderá os conceitos básicos por trás da programação Clojure, entenderá por que ela é popular e poderosa e, mais importante, obterá muita experiência prática por meio de exercícios práticos de codificação. Ao longo do caminho, você ganhará experiência em técnicas comuns de programação Clojure, estruturas de dados e programação orientada a objetos.
Ao final deste curso, você terá um melhor entendimento sobre o Clojure e seus aplicativos, bem como a capacidade de criar aplicativos com ele. Seja você um iniciante procurando um curso básico ou um programador experiente que deseja aprimorar suas habilidades, este curso oferece uma introdução agradável e abrangente ao mundo da programação Clojure.
Objetivo
Após realizar este Curso Clojure Overview você será capa de:
- Entenda a sintaxe e os princípios básicos do Clojure.
- Compreender como criar um programa Clojure simples e trabalhar com o REPL.
- Familiarize-se com as ferramentas de programação funcional e os paradigmas do Clojure.
- Entenda como usar as estruturas de dados centrais no Clojure (mapas e listas).
- Entenda como usar funções de ordem superior em seu programa.
- Crie e use macros em seus programas Clojure.
- Crie programas simultâneos com core.async e STM.
- Entenda as melhores práticas a serem usadas ao desenvolver com Clojure.
- Entenda e use as APIs do Clojure.
- Utilize ferramentas como Leiningen, Maven e mais para construir e testar seus programas Clojure.
Publico Alvo
O público ideal para um programa de treinamento Clojure incluiria desenvolvedores de software, administradores de sistema, cientistas de dados, trabalhadores DevOps e outros profissionais interessados em aprender essa poderosa linguagem de programação Especificamente,
aqueles com experiência em Java e Lisp serão os mais beneficiados, pois Clojure integra recursos de ambas as linguagens
Além disso, programadores experientes de linguagens relacionadas como Scala, Groovy e JavaScript acharão a transição para Clojure mais fácil
Embora iniciantes em programação possam aprender Clojure, sua complexidade requer algum conhecimento de fundamentos de codificação
Desenvolvedores que buscam construir web aplicativos, microsserviços e sistemas distribuídos, bem como aqueles que desejam trabalhar em projetos de Big Data, acharão o Clojure uma ferramenta valiosa
Pre-Requisitos
1. Alguns conhecimentos básicos de HTML, JavaScript e SQL são recomendados.
2. Um conhecimento de nível iniciante de programação orientada a objetos.
3. A experiência com uma linguagem de programação Lisp ou Functional existente é benéfica, mas não obrigatória.
4. Familiaridade com um ambiente de desenvolvimento como Eclipse ou IntelliJ é útil.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico
Introduction to Clojure
- What is Clojure?
- What are its advantages?
- Getting it and installing it
- Tooling
Basic Clojure Syntax and the REPL
- Lisp syntax
- Everything is a list...
- The REPL
- Using Lein to create projects
- Executing code
Clojure Functions
- Executing functions
- Writing functions
- Using 'let'
- Variadic functions
- Functions with multiple arity
Clojure Namespaces
- What is a namespace?
- What is a namespace?
- Using code in other namespaces
- require, use, and import
- Reloading namespaces
- The ns declaration
Working with Java Code & Clojure
- Importing Java packages
- Using static class members
- Calling instance methods
More Clojure Syntax…
- Execution (do, doseq, dotimes)
- Conditionals (if, cond, condp, case)
- Iteration (while, for, loop)
Intro to Functional Programming with Clojure
- What is Functional Programming?
- Higher-order functions
- Anonymous functions
- Functional composition
- Destructuring
- What is destructuring?
- Sequential destructuring
- Associative destructuring
- Using :keys and :or Named arguments
Data Structures
- The four basic structures:
- Lazy Sequences
- Operations on sequences (eg map, reduce, filter)
Polymorphism
- Defining and using Types
- Defining and using Records
TENHO INTERESSE