Slide 1

Slide 1 text

Elixir e Phoenix Um chat em 5 minutos

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

Criada por José Valim

Slide 4

Slide 4 text

É uma linguagem de programação com design para construir sistemas escaláveis e fáceis de manter

Slide 5

Slide 5 text

Roda em cima da maquina virtual do Erlang

Slide 6

Slide 6 text

Conhecido por rodar aplicações com latência baixa, distribuídas ou tolerante a falhas

Slide 7

Slide 7 text

Escalabilidade horizontal e vertical

Slide 8

Slide 8 text

Trabalhou na mudança do rails 3 para o 4, thread safe

Slide 9

Slide 9 text

Percebeu que as ferramentas que existem não são boas para concorrência

Slide 10

Slide 10 text

Escalabilidade Tolerância a falhas Compatível com Erlang Hot Code Swap Linguagem Dinâmica Metaprogramação Polimorfismo Concorrência

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

“A productive web framework that does not compromise speed and maintainability”

Slide 13

Slide 13 text

1. Importamos o arquivo de Sockets do framework; 2. Criamos um socket e nos conectamos a um Channel com o tópico ‘rooms’; 3. Tratamos as respostas; 4. Enviamos as mensagens ao servidor; 5. Recebemos o broadcast das mensagens;

Slide 14

Slide 14 text

Essa linha é responsável por tratar qualquer mensagem que nós mandarmos que tenha o tópico rooms: , configurado no nosso javascript, através da variável channel.

Slide 15

Slide 15 text

Iremos adicionar uma função para nos conectarmos ao channel. Ela recebe o tópico, a mensagem e o socket; retornando o status de :ok para indicar sucesso na conexão. E outra função que irá lidar com as mensagens que chegam ao servidor. Ele será responsável por realizar o broadcast da mensagem a todos os participantes.

Slide 16

Slide 16 text

http://bit.ly/1mbDeo9

Slide 17

Slide 17 text

Obrigada!

Slide 18

Slide 18 text

Referências ● https://dribbble.com/shots/1612621-Phoenix-Framework-Logo ● http://www.grokpodcast.com/2015/01/08/episodio-125-elixir/ ● http://www.grokpodcast.com/2015/01/08/episodio-126-elixir/ ● http://www.grokpodcast.com/2015/01/08/episodio-127-elixir/ ● http://phoenixframework.org/ ● http://elixir-lang.org/ ● http://theerlangelist.com/article/why_elixir ● http://www.phoenixframework.org/blog