SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Go
Porque
desenvolver
em
(ou não)
2017
2017Porque desenvolver em Go? (ou não)
Uma
Breve
História:
2017Porque desenvolver em Go? (ou não)
Era
uma vez
...
2017Porque desenvolver em Go? (ou não)
Um pythonista
trabalhando com
concorrência
E que decidiu ver como
outras linguagens
lidavam com o
tema
2017Porque desenvolver em Go? (ou não)
E dentre as opções se
empenhou em estudar
Go
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Porque
Go?
2017Porque desenvolver em Go? (ou não)
Sintaxe
semelhante à C
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Go não tem
classe
Tem struct
2017Porque desenvolver em Go? (ou não)
Struct?
Ponteiros? Sem
herança?
Estamos
mesmo no
século XXI?
2017Porque desenvolver em Go? (ou não)
É muito pessoal,
mas aprendi a
amá-lo
2017Porque desenvolver em Go? (ou não)
Tratamento
de erros
2017Porque desenvolver em Go? (ou não)
● Funções podem retornar mais de um valor
● Não existem exceptions em Go
● Panic é um erro quase irrecuperável da aplicação
2017Porque desenvolver em Go? (ou não)
O maior problema de
Go não ter
exceptions, é a falta
de stacktrace. (dizem)
2017Porque desenvolver em Go? (ou não)
O que é um
erro?
2017Porque desenvolver em Go? (ou não)
Uma interface! E como
brinca disso?
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Vamos ao que
interessa!
Gorotinas
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Channels
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Um simples
servidor web
2017Porque desenvolver em Go? (ou não)
2017Porque desenvolver em Go? (ou não)
Coisas que eu
não gosto em
Go
2017Porque desenvolver em Go? (ou não)
O linter pede
documentação para
tudo que é público
2017Porque desenvolver em Go? (ou não)
É recomendado
usar variáveis e
funções de uma só
letra.
2017Porque desenvolver em Go? (ou não)
Os testes ficam
junto com o código
em um arquivo com
_test.go
2017Porque desenvolver em Go? (ou não)
Coisas que eu
gosto em Go
2017Porque desenvolver em Go? (ou não)
Ferramentas muito
boas para teste,
como a GoConvey
2017Porque desenvolver em Go? (ou não)
Simplicidade
2017Porque desenvolver em Go? (ou não)
Channels <3
2017Porque desenvolver em Go? (ou não)
Geração de um
binário.
2017Porque desenvolver em Go? (ou não)
Obrigado!
@carlosmaniero

Mais conteúdo relacionado

Semelhante a Porque Desenvolver em Go (Golang) - ABCDev 2017

Go (golang) - Porque ele deve ser a linguagem da sua próxima API
Go (golang) - Porque ele deve ser a linguagem da sua próxima APIGo (golang) - Porque ele deve ser a linguagem da sua próxima API
Go (golang) - Porque ele deve ser a linguagem da sua próxima APIJeff Prestes
 
Go ou Golang: a jogada da Google pra salvar ela mesma
Go ou Golang: a jogada da Google pra salvar ela mesmaGo ou Golang: a jogada da Google pra salvar ela mesma
Go ou Golang: a jogada da Google pra salvar ela mesmaMarcelo Pisani Garib
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreamsJacqueline Abreu
 
Adeus MS Office - Luiz Henrique Rauber Rodrigues
Adeus MS Office - Luiz Henrique Rauber RodriguesAdeus MS Office - Luiz Henrique Rauber Rodrigues
Adeus MS Office - Luiz Henrique Rauber RodriguesTchelinux
 
Desafios na escolha de uma linguagem de programação. Qual a melhor?
Desafios na escolha de uma linguagem de programação. Qual a melhor?Desafios na escolha de uma linguagem de programação. Qual a melhor?
Desafios na escolha de uma linguagem de programação. Qual a melhor?Danilo Raulino de Liz
 
Utilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosUtilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosmarciowferreira
 
Ambiente livre para desenvolvimento web
Ambiente livre para desenvolvimento webAmbiente livre para desenvolvimento web
Ambiente livre para desenvolvimento webEvaldo Junior
 
Senid2016 - Oficina de LibreLogo - Prof. Gilvan Vilarm
Senid2016 - Oficina de LibreLogo - Prof. Gilvan VilarmSenid2016 - Oficina de LibreLogo - Prof. Gilvan Vilarm
Senid2016 - Oficina de LibreLogo - Prof. Gilvan VilarmGilvan Vilarim
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QAtdc-globalcode
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao WordpressAline Corso
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento4Soft
 
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLDesenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLGeorge Mendonça
 
Cogroo Comunidade no FISL XI
Cogroo Comunidade no FISL XICogroo Comunidade no FISL XI
Cogroo Comunidade no FISL XIWilliam Colen
 
Sistemas de Controle de Versão
Sistemas de Controle de VersãoSistemas de Controle de Versão
Sistemas de Controle de VersãoBruno Schettino
 

Semelhante a Porque Desenvolver em Go (Golang) - ABCDev 2017 (17)

Go (golang) - Porque ele deve ser a linguagem da sua próxima API
Go (golang) - Porque ele deve ser a linguagem da sua próxima APIGo (golang) - Porque ele deve ser a linguagem da sua próxima API
Go (golang) - Porque ele deve ser a linguagem da sua próxima API
 
Condingdojo
CondingdojoCondingdojo
Condingdojo
 
Go ou Golang: a jogada da Google pra salvar ela mesma
Go ou Golang: a jogada da Google pra salvar ela mesmaGo ou Golang: a jogada da Google pra salvar ela mesma
Go ou Golang: a jogada da Google pra salvar ela mesma
 
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams#DNAD15  - Diminuindo sofrimento com código legado de linguagens não mainstreams
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreams
 
Adeus MS Office - Luiz Henrique Rauber Rodrigues
Adeus MS Office - Luiz Henrique Rauber RodriguesAdeus MS Office - Luiz Henrique Rauber Rodrigues
Adeus MS Office - Luiz Henrique Rauber Rodrigues
 
Adeus MS Office
Adeus MS OfficeAdeus MS Office
Adeus MS Office
 
Desafios na escolha de uma linguagem de programação. Qual a melhor?
Desafios na escolha de uma linguagem de programação. Qual a melhor?Desafios na escolha de uma linguagem de programação. Qual a melhor?
Desafios na escolha de uma linguagem de programação. Qual a melhor?
 
Utilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosUtilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetos
 
Ambiente livre para desenvolvimento web
Ambiente livre para desenvolvimento webAmbiente livre para desenvolvimento web
Ambiente livre para desenvolvimento web
 
Senid2016 - Oficina de LibreLogo - Prof. Gilvan Vilarm
Senid2016 - Oficina de LibreLogo - Prof. Gilvan VilarmSenid2016 - Oficina de LibreLogo - Prof. Gilvan Vilarm
Senid2016 - Oficina de LibreLogo - Prof. Gilvan Vilarm
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao Wordpress
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento
 
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSLDesenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
Desenvolvendo Um Projeto de um Portal Responsivo com WordPress - 10° FGSL
 
Cogroo Comunidade no FISL XI
Cogroo Comunidade no FISL XICogroo Comunidade no FISL XI
Cogroo Comunidade no FISL XI
 
Mergulhando no ecossistema .NET
Mergulhando no ecossistema .NETMergulhando no ecossistema .NET
Mergulhando no ecossistema .NET
 
Sistemas de Controle de Versão
Sistemas de Controle de VersãoSistemas de Controle de Versão
Sistemas de Controle de Versão
 

Porque Desenvolver em Go (Golang) - ABCDev 2017