Slide 1

Slide 1 text

Go Types Startup Edmonton Hack Day Saturday, May 9, 2015

Slide 2

Slide 2 text

Today ✴ Variables ✴ Declare, Initialize, Assign ✴ Strong and Static Typing ✴ Type Inference ✴ Scope ✴ Numeric Types

Slide 3

Slide 3 text

play.golang.org

Slide 4

Slide 4 text

Nathan Youngman @nathany ✓ JavaScript ✓ PHP ✓ Python ✓ Ruby ✓ C ✓ Java ✓ Go

Slide 5

Slide 5 text

Static types, strong types Weak Strong Dynamic JavaScript PHP Python
 Ruby Static C Java
 C# Go

Slide 6

Slide 6 text

play.golang.org package main
 
 import "fmt"
 
 func main() {
 var name string
 name = "Kim"
 fmt.Println("Hello", name)
 }

Slide 7

Slide 7 text

play.golang.org package main
 
 import "fmt"
 
 func main() {
 var a int
 a, b := 1, 2
 fmt.Println(a, b)
 }


Slide 8

Slide 8 text

play.golang.org package main
 
 import "fmt"
 
 func main() {
 a, op, b := 1, "+", 2
 
 var result int
 if op == "+" {
 result = a + b
 }
 fmt.Println(result)
 }

Slide 9

Slide 9 text

Numeric types Signed Minimum Maximum int8 -128 127 int16 -32768 32767 int32 -2147483648 2147483647 int64 -9223372036854775808 9223372036854775807 Unsigned Minimum Maximum uint8 0 255 uint16 0 65535 uint32 0 4294967295 uint64 0 18446744073709551615

Slide 10

Slide 10 text

Numeric types Floating point IEEE-754 ~ Minimum ~ Maximum float32 -1038 1038 float64 -10308 10308

Slide 11

Slide 11 text

Nathan Youngman @nathany speakerdeck.com/nathany