Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Por que o Go veio ao mundo? - GDG Salvador

Por que o Go veio ao mundo? - GDG Salvador

Live da apresentação:
bit.ly/go-gdgsalvador-video

Pode me ajudar avaliando a talk?
bit.ly/go-gdgsalvador-form

Lauren Ferreira

October 14, 2018
Tweet

More Decks by Lauren Ferreira

Other Decks in Technology

Transcript

  1. 2007 2009 2012 1/2013 2/2013 1/2014 2/2014 2/2015 1/2016 2/2016

    1/2017 2/2017 1/2018 start open source 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10
  2. estática O GO É UMA LINGUAGEM DE TIPAGEM… C C++

    Java Haskell Elm Rust jato invisível
  3. 85 60 49 41 33 32 25 0 10 20

    30 40 50 60 70 80 90 C++ JavaScript Java Ruby Python C Go PALAVRAS RESERVADAS NAS PRINCIPAIS LINGUAGENS DE PROGRAMAÇÃO
  4. break case chan const continue default defer else fallthrough for

    func go if import interface map package range return select struct switch type var
  5. go

  6. // batata.go package batata func RetornaTipo() string { var tipo

    string tipo = “batata frita” return tipo }
  7. // main.go package main import ( “fmt” “batata” ) func

    main(){ fmt.Println(“Olá, GDG Salvador!”) fmt.Println(“Eu amo” + batata.RetornaTipo()) }
  8. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} x := soma(impar) y := soma(par) fmt.Println(“Primeira soma: ”, x) fmt.Println(“Segunda soma: ”, y) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  9. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} x := soma(impar) y := soma(par) fmt.Println(“Primeira soma: ”, x) fmt.Println(“Segunda soma: ”, y) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  10. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} go soma(impar) go soma(par) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  11. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} go soma(impar) go soma(par) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  12. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar) go soma(par) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  13. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar) go soma(par) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  14. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar, c) go soma(par, c) } func soma(a []int) int { soma := 0 for _, v := range a { soma += v } return soma }
  15. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar, c) go soma(par, c) } func soma(a []int, c chan int) int { soma := 0 for _, v := range a { soma += v } return soma }
  16. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar, c) go soma(par, c) } func soma(a []int, c chan int) int { soma := 0 for _, v := range a { soma += v } return soma }
  17. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar, c) go soma(par, c) } func soma(a []int, c chan int) { soma := 0 for _, v := range a { soma += v } c <- soma }
  18. // main.go package main import “fmt” func main(){ impar :=

    []int{1, 3, 5, 9} par := []int{2, 4, 6, 8} c := make(chan int) go soma(impar, c) go soma(par, c) x, y := <-c, <-c fmt.Println(“Primeira soma: ”, x) fmt.Println(“Segunda soma: ”, y) } func soma(a []int, c chan int) { soma := 0 for _, v := range a { soma += v } c <- soma }
  19. Se uma tecnologia não faz você mudar a sua forma

    de pensar, não vale a pena aprendê-la. - algum sábio rancoroso