Slide 1

Slide 1 text

CONSTRUINDO UM SERVIDOR WEB COM GO And there we GO…

Slide 2

Slide 2 text

Sou Beto Muniz Tenho 21 anos e sou um mineiro-capixaba. E trabalho na Tagon8 Inc.

Slide 3

Slide 3 text

[email protected] WWW.BETOMUNIZ.COM GITHUB.COM/OBETOMUNIZ FB.COM/OBETOMUNIZ

Slide 4

Slide 4 text

Mas porque usar Go Lang para um Servidor Web?

Slide 5

Slide 5 text

Fácil Aprendizado

Slide 6

Slide 6 text

Ótima para Single Page Applications

Slide 7

Slide 7 text

goroutines goroutine é tipo de função capaz de ser executada simultaneamente com outras funções, ou seja, de forma assíncrona.

Slide 8

Slide 8 text

Fácil implementação de Concorrência

Slide 9

Slide 9 text

Ótimas biblioteca nativa de componentes

Slide 10

Slide 10 text

Incrível Biblioteca HTTP

Slide 11

Slide 11 text

Desenvolvimento baseado em componentes* (*semelhante aos módulos de NodeJS)

Slide 12

Slide 12 text

Desenvolvimento baseado em componentes semelhante aos módulos de NodeJS e não grandes frameworks “engessados”

Slide 13

Slide 13 text

Mantido pela Google O que de certa forma garante bastante qualidade, visibilidade e ótimos contribuintes para o projeto

Slide 14

Slide 14 text

Performance comparada a NodeJS e por vezes saindo melhor que NodeJS.

Slide 15

Slide 15 text

NodeJS vs. Go : HttpRequests

Slide 16

Slide 16 text

NodeJS vs. Go : Simulação de Gargalo com Redis

Slide 17

Slide 17 text

OK! …mas só vi blahblahblah…E o código? ! ! @,@

Slide 18

Slide 18 text

…Um exemplo de uma aplicação web

Slide 19

Slide 19 text

Estrutura mínima de pastas para criação do nosso servidor

Slide 20

Slide 20 text

Iniciando nosso arquivo todos.go

Slide 21

Slide 21 text

Importando pacotes necessários para rodar um servidor web com view engine HTML

Slide 22

Slide 22 text

Declarando a função que servirá de construtora e que também será onde todas as configuração de rotas, porta, arquivos estáticos da aplicação estarão.

Slide 23

Slide 23 text

Bônus: Stub da API que nossa applicação irá consumir

Slide 24

Slide 24 text

Todo List App

Slide 25

Slide 25 text

Demo Time

Slide 26

Slide 26 text

E é isso… Dúvidas? Algo a acrescentar na talk? ! IT’S TIME!

Slide 27

Slide 27 text

FIM Obrigado pela presença de todos.

Slide 28

Slide 28 text

Referências http://www.golangbr.org/doc/ http://go-tour-br.appspot.com/#1 http://goporexemplo.pistach.es/ http://www.golangbr.org/ http://www.polydaic.com/blog/go-vs-node-js http://golang.org/doc/articles/wiki/