O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Elixir inside out

57 visualizações

Publicada em

Apresentação sobre a estrutura base de tudo em Elixir. Feita na Meetup de Elixir em Curitiba no dia 21 de Setembro de 2017 por mim.

Vale lembrar que a talk foi praticamente um plágio de uma parte do keynote do José Valim na Elixir Conf EU de 2017.

Aqui está o keynote: https://www.youtube.com/watch?v=IZvpKhA6t8A
E pra quem é mais apressado, direto ao ponto onde a parte da talk que fiz começa: https://youtu.be/IZvpKhA6t8A?t=1248

Publicada em: Software
  • Seja o primeiro a comentar

Elixir inside out

  1. 1. Elixir inside out
  2. 2. What is Elixir? For devs! ● Sabemos que Elixir é bem diferente do que a gente está acostumado ● Mas o que especificamente? ● Vamos começar pelo começo!
  3. 3. Os 3 pilares ● Estado ○ Data!! ● Comportamento ○ Code!!! ● Tempo ○ WTF?!!!!!!
  4. 4. Os 3 pilares em Elixir ● Esses conceitos estão totalmente separados um do outro ○ Data imutável ○ Modules sem dados intrínsicos ○ Processes é o que junta tudo
  5. 5. Exemplo?
  6. 6. Processos!!! ● Processos carregam os dados ● Rodam o comportamento sequencialmente ● E introduzem a noção concorrência ● E o tempo? ○ A noção de tempo é adicionada a partir do momento em que os processos precisam se comunicar
  7. 7. Para quê usar processos? ● Para gerenciar estado mutável ● Para execução concorrente ● Para tratar e isolar falhas ● Para comunicação distribuída
  8. 8. E daí? ● Agora você sabe as principais diferenças de Elixir e outras linguagens ● Agora você sabe quando usar e quando não usar processos ● Todas essas coisas exigem você mudar o seu pensamento e o seu código
  9. 9. E daí? ● É por isso que existem features como: ○ Pattern matching ○ Guard clauses ○ Multiple function clauses ○ Pipe operator ○ Protocols ○ Macros ● E filosofias como: ○ Less assignments
  10. 10. Concluindo! ● Elixir não é feita só pra resolver problemas como paralelismo, resiliência e zero-downtime deploy. ● Podemos e devemos usar Elixir para coisas do dia-a-dia! ● Porque? ○ Tem uma sintaxe boa ○ É full featured ○ Tem um ferramental completo e unificado ○ É simples e organizada desde o princípio
  11. 11. Estamos contratando!
  12. 12. Dúvidas e comentários?
  13. 13. Curitiba | São Paulo | San Francisco, US ateliware.com.br +55 (41) 3010-2275

×