SlideShare uma empresa Scribd logo
1 de 31
Onboard Golang
Introdução à linguagem Go
quem tá falando?
MARCELA SISILIANI
https://msisiliani.github.io/
Por que estudar
go?
os criadores
Robert Griesemer
Rob Pike
Ken Thompson
“Go's purpose is therefore not to
do research into programming
language design; it is to improve
the working environment for its
designers and their coworkers.”
by rob pike
“O objetivo da Go não é, portanto,
fazer pesquisa em design de
linguagem de programação; é
melhorar o ambiente de trabalho
para seus designers e colegas de
trabalho.”
by google_tradutor(rob pike)
“Go is more about software
engineering than programming
language research. Or to rephrase,
it is about language design in the
service of software engineering.”
by rob pike
“Go é mais sobre engenharia de
software do que pesquisa em
linguagem de programação. Ou,
para reformular, trata-se de
design de linguagem a serviço da
engenharia de software”
by google_tradutor(rob pike)
Timeline
● 2007: Onde tudo começou
● 2009: Open Source
● 2012: Primeira versão estável
Então, Qual é a
proposta de solução
do go, na real?
Então, Qual é a
proposta de solução
do go, na real?
1. hardware + software
2. eliminar a lentidão
3. aumentar a eficácia
4. escalabilidade
Por que é uma
linguagem
simples?
● 25 palavras reservadas
● Linguagem Estática
● Concorrência é simples
● Memória Gerenciável
● Garbage Collector
● Testes
25 palavras reservadas
Quem usa golang
Feito em go
O QUE POSSO FAZER
COM GO
● APIS
● SERVICES
● TASKS
● WEBSITES
pOR ONDE COMEÇAR?
GO TOUR
go tour
go tour
por onde
continuar?
Curso de Go na Alura
Curso da Ellen
Exercism.io
HackerHank - 30 days of code
Goin5Minutes
Aprenda Go com Testes
Projetos open-source
Online
por onde
continuar?
Online
por onde
continuar?
Offline
Por que não
estudar go?
quem tá falando?
MARCELA SISILIANI
Software Engineer
Resultados Digitais
Cientista da
Computação
Cat Lover
==
TRUE
https://msisiliani.github.io/
quem tá falando?
MARCELA SISILIANI
Contatinhos
https://msisiliani.github.io/
@ma_sisiliani @marcelasisiliani
FEEDBACK
https://msisiliani.github.io/

Mais conteúdo relacionado

Mais procurados

Era of computer from 1974
Era of computer from 1974Era of computer from 1974
Era of computer from 1974Neha Akhtar
 
MÉTODOS DE AVALIAÇÃO DA USABILIDADE
MÉTODOS DE AVALIAÇÃO DA USABILIDADEMÉTODOS DE AVALIAÇÃO DA USABILIDADE
MÉTODOS DE AVALIAÇÃO DA USABILIDADEAndrea Dalforno
 
Planejando seu app
Planejando seu appPlanejando seu app
Planejando seu appAline Borges
 
Tipos de Dados Multimédia e Formatos Standard
Tipos de Dados Multimédia e Formatos StandardTipos de Dados Multimédia e Formatos Standard
Tipos de Dados Multimédia e Formatos Standardgizinho
 
O Que E Interacao Cap1 Ihc
O Que E Interacao Cap1 IhcO Que E Interacao Cap1 Ihc
O Que E Interacao Cap1 IhcFabiano Damiati
 
O assassinato de roger ackroyd agatha christie1
O assassinato de roger ackroyd   agatha christie1O assassinato de roger ackroyd   agatha christie1
O assassinato de roger ackroyd agatha christie1vanspaik
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadoresDaniel Moura
 
Aula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de ComputadoresAula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de ComputadoresGilvan Latreille
 
IHC - Abordagem geral, processos ou metodologia
IHC - Abordagem geral, processos ou metodologiaIHC - Abordagem geral, processos ou metodologia
IHC - Abordagem geral, processos ou metodologiaRos Galabo, PhD
 
Trabalho sobre as memórias ram
Trabalho sobre as memórias ramTrabalho sobre as memórias ram
Trabalho sobre as memórias ramjfranca1984
 
Probabilistic Programming: Why, What, How, When?
Probabilistic Programming: Why, What, How, When?Probabilistic Programming: Why, What, How, When?
Probabilistic Programming: Why, What, How, When?Salesforce Engineering
 
FPD-Link III Serializers & Deserializers
FPD-Link III Serializers & DeserializersFPD-Link III Serializers & Deserializers
FPD-Link III Serializers & DeserializersPremier Farnell
 

Mais procurados (20)

Era of computer from 1974
Era of computer from 1974Era of computer from 1974
Era of computer from 1974
 
MÉTODOS DE AVALIAÇÃO DA USABILIDADE
MÉTODOS DE AVALIAÇÃO DA USABILIDADEMÉTODOS DE AVALIAÇÃO DA USABILIDADE
MÉTODOS DE AVALIAÇÃO DA USABILIDADE
 
Software
SoftwareSoftware
Software
 
Módulo 1 de PSI
Módulo 1 de PSIMódulo 1 de PSI
Módulo 1 de PSI
 
Planejando seu app
Planejando seu appPlanejando seu app
Planejando seu app
 
Tipos de Dados Multimédia e Formatos Standard
Tipos de Dados Multimédia e Formatos StandardTipos de Dados Multimédia e Formatos Standard
Tipos de Dados Multimédia e Formatos Standard
 
Camada 1 do modelo osi
Camada 1 do modelo osiCamada 1 do modelo osi
Camada 1 do modelo osi
 
O Que E Interacao Cap1 Ihc
O Que E Interacao Cap1 IhcO Que E Interacao Cap1 Ihc
O Que E Interacao Cap1 Ihc
 
O assassinato de roger ackroyd agatha christie1
O assassinato de roger ackroyd   agatha christie1O assassinato de roger ackroyd   agatha christie1
O assassinato de roger ackroyd agatha christie1
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadores
 
Aula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de ComputadoresAula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de Computadores
 
IHC - Abordagem geral, processos ou metodologia
IHC - Abordagem geral, processos ou metodologiaIHC - Abordagem geral, processos ou metodologia
IHC - Abordagem geral, processos ou metodologia
 
IHC - Slide 2 - Usabilidade e Princípios de Design
IHC - Slide 2 - Usabilidade e Princípios de DesignIHC - Slide 2 - Usabilidade e Princípios de Design
IHC - Slide 2 - Usabilidade e Princípios de Design
 
Historia Computadores
Historia ComputadoresHistoria Computadores
Historia Computadores
 
Trabalho sobre as memórias ram
Trabalho sobre as memórias ramTrabalho sobre as memórias ram
Trabalho sobre as memórias ram
 
Probabilistic Programming: Why, What, How, When?
Probabilistic Programming: Why, What, How, When?Probabilistic Programming: Why, What, How, When?
Probabilistic Programming: Why, What, How, When?
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Visual basic
Visual basicVisual basic
Visual basic
 
Placa grafica
Placa graficaPlaca grafica
Placa grafica
 
FPD-Link III Serializers & Deserializers
FPD-Link III Serializers & DeserializersFPD-Link III Serializers & Deserializers
FPD-Link III Serializers & Deserializers
 

Semelhante a Começando com Golang (Go)

Porque Desenvolver em Go (Golang) - ABCDev 2017
Porque Desenvolver em Go (Golang) - ABCDev 2017Porque Desenvolver em Go (Golang) - ABCDev 2017
Porque Desenvolver em Go (Golang) - ABCDev 2017Carlos Maniero
 
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?tdc-globalcode
 
Utilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosUtilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosmarciowferreira
 
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
 
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
 
Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01William Colen
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento4Soft
 
Explorando O Potencial Das Linguagens De Programação Open Source
Explorando O Potencial Das Linguagens De Programação Open SourceExplorando O Potencial Das Linguagens De Programação Open Source
Explorando O Potencial Das Linguagens De Programação Open SourceRafael Jaques
 
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
 
Agile br2011 lucabastos-prog10x-noiteagilcaelum
Agile br2011 lucabastos-prog10x-noiteagilcaelumAgile br2011 lucabastos-prog10x-noiteagilcaelum
Agile br2011 lucabastos-prog10x-noiteagilcaelumLuca Bastos
 
Entendendo um pouco melhor o que é Ruby
Entendendo um pouco melhor o que é RubyEntendendo um pouco melhor o que é Ruby
Entendendo um pouco melhor o que é Rubycodeland
 
Tradução de Aplicativos Livres
Tradução de Aplicativos LivresTradução de Aplicativos Livres
Tradução de Aplicativos LivresÁtila Camurça
 
Palestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço FilhoPalestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço Filhorafarubert
 
Ruby On Rails: Por que sua Startup deve usar?
Ruby On Rails: Por que sua Startup deve usar?Ruby On Rails: Por que sua Startup deve usar?
Ruby On Rails: Por que sua Startup deve usar?Luiz Carvalho
 
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
 
Introducao ao ruby on rails
Introducao ao ruby on railsIntroducao ao ruby on rails
Introducao ao ruby on railsrailsgirlsbsb
 
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
Ruby on rails  impressione a você mesmo, seu chefe e seu clienteRuby on rails  impressione a você mesmo, seu chefe e seu cliente
Ruby on rails impressione a você mesmo, seu chefe e seu clienteRodrigo Urubatan
 

Semelhante a Começando com Golang (Go) (20)

Porque Desenvolver em Go (Golang) - ABCDev 2017
Porque Desenvolver em Go (Golang) - ABCDev 2017Porque Desenvolver em Go (Golang) - ABCDev 2017
Porque Desenvolver em Go (Golang) - ABCDev 2017
 
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?
TDC2018SP | Trilha Go - Por que o Golang veio ao mundo?
 
Apresentando Groovy e Grails
Apresentando Groovy e GrailsApresentando Groovy e Grails
Apresentando Groovy e Grails
 
Utilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetosUtilize Groovy nos seus futuros projetos
Utilize Groovy nos seus futuros projetos
 
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
 
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
 
Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01
 
Conhecendo Go
Conhecendo GoConhecendo Go
Conhecendo Go
 
Lidando com Equipes de Desenvolvimento
Lidando com Equipes de DesenvolvimentoLidando com Equipes de Desenvolvimento
Lidando com Equipes de Desenvolvimento
 
Explorando O Potencial Das Linguagens De Programação Open Source
Explorando O Potencial Das Linguagens De Programação Open SourceExplorando O Potencial Das Linguagens De Programação Open Source
Explorando O Potencial Das Linguagens De Programação Open Source
 
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?
 
Agile br2011 lucabastos-prog10x-noiteagilcaelum
Agile br2011 lucabastos-prog10x-noiteagilcaelumAgile br2011 lucabastos-prog10x-noiteagilcaelum
Agile br2011 lucabastos-prog10x-noiteagilcaelum
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Entendendo um pouco melhor o que é Ruby
Entendendo um pouco melhor o que é RubyEntendendo um pouco melhor o que é Ruby
Entendendo um pouco melhor o que é Ruby
 
Tradução de Aplicativos Livres
Tradução de Aplicativos LivresTradução de Aplicativos Livres
Tradução de Aplicativos Livres
 
Palestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço FilhoPalestra Faculdade Lourenço Filho
Palestra Faculdade Lourenço Filho
 
Ruby On Rails: Por que sua Startup deve usar?
Ruby On Rails: Por que sua Startup deve usar?Ruby On Rails: Por que sua Startup deve usar?
Ruby On Rails: Por que sua Startup deve usar?
 
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
 
Introducao ao ruby on rails
Introducao ao ruby on railsIntroducao ao ruby on rails
Introducao ao ruby on rails
 
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
Ruby on rails  impressione a você mesmo, seu chefe e seu clienteRuby on rails  impressione a você mesmo, seu chefe e seu cliente
Ruby on rails impressione a você mesmo, seu chefe e seu cliente
 

Começando com Golang (Go)

Notas do Editor

  1. Robert Griesemer - Vs Javascript Engine, Java HotSpot VM Rob Pike - Unix, Plan 9, UTF-8 Ken Thompson - Unix, Plan 9, B Language, UTF-8
  2. Referência: https://talks.golang.org/2012/splash.article
  3. Referência: https://talks.golang.org/2012/splash.article
  4. Referência: https://talks.golang.org/2012/splash.article
  5. Referência: https://talks.golang.org/2012/splash.article
  6. https://golang.org/doc/devel/release.html
  7. Engenharia de Software: Hardwares evoluindo e softwares lentos Eliminar a lentidão: Compilação rápida, que antes demorava 45 minutos Aumentar a eficácia: Através das Go Routines (async) e Channels (sync), Concorrência e Paralelismo, Garbage Collector, Escalibilidade: Packages, binários leves, gerenciador de dependências
  8. https://www.slideshare.net/ssuser9ebf46/golang-101
  9. https://www.slideshare.net/PramestiHattaK/golang-101-concurrency-vs-parallelism
  10. https://www.slideshare.net/PramestiHattaK/golang-101-concurrency-vs-parallelism
  11. https://github.com/golang/go/wiki/GoUsers
  12. https://github.com/golang/go/wiki/GoUsers
  13. https://insights.stackoverflow.com/survey/2019
  14. https://github.com/golang/go/wiki/GoUsers
  15. https://github.com/golang/go/wiki/GoUsers
  16. http://www.golangbr.org/doc/instalacao https://tour.golang.org/
  17. https://medium.com/@anapaulagomes/48-horas-para-aprender-go-4542b51d84a4 http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html https://thoughtworksinc.github.io/sinais/passo-01 https://medium.com/trainingcenter/golang-d94e16d4b383
  18. https://medium.com/@anapaulagomes/48-horas-para-aprender-go-4542b51d84a4 http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html https://thoughtworksinc.github.io/sinais/passo-01 https://medium.com/trainingcenter/golang-d94e16d4b383
  19. https://medium.com/@anapaulagomes/48-horas-para-aprender-go-4542b51d84a4 http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html https://thoughtworksinc.github.io/sinais/passo-01 https://medium.com/trainingcenter/golang-d94e16d4b383 https://greatercommons.com/learn/golang-ptbr