Initial commit
This commit is contained in:
30
03-packages-and-scopes/exercises/01-packages/main.go
Normal file
30
03-packages-and-scopes/exercises/01-packages/main.go
Normal file
@ -0,0 +1,30 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// EXERCISE
|
||||
// Create a few Go files and call their functions from
|
||||
// the main function.
|
||||
//
|
||||
// 1- Create main.go, greet.go and bye.go files
|
||||
// 2- In main.go: Call greet and bye functions.
|
||||
// 3- Run `main.go`
|
||||
//
|
||||
// HINT
|
||||
// greet function should be in greet.go
|
||||
// bye function should be in bye.go
|
||||
//
|
||||
// EXPECTED OUTPUT
|
||||
// hi there
|
||||
// goodbye
|
||||
// ---------------------------------------------------------
|
||||
|
||||
func main() {
|
||||
// call functions of the other files here
|
||||
}
|
14
03-packages-and-scopes/exercises/01-packages/solution/bye.go
Normal file
14
03-packages-and-scopes/exercises/01-packages/solution/bye.go
Normal file
@ -0,0 +1,14 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func bye() {
|
||||
fmt.Println("goodbye")
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func greet() {
|
||||
fmt.Println("hi there")
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
func main() {
|
||||
greet()
|
||||
bye()
|
||||
}
|
33
03-packages-and-scopes/exercises/02-scopes/main.go
Normal file
33
03-packages-and-scopes/exercises/02-scopes/main.go
Normal file
@ -0,0 +1,33 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// EXERCISE
|
||||
// 1. Create two files: main.go and printer.go
|
||||
//
|
||||
// 2. In printer.go:
|
||||
// 1. Create a function named hello
|
||||
// 2. Inside the hello function, print your name
|
||||
//
|
||||
// 3. In main.go:
|
||||
// 1. Create the usual func main
|
||||
// 2. Call your function just by using its name: hello
|
||||
// 3. Create a function named bye
|
||||
// 4. Inside the bye function, print "bye bye"
|
||||
//
|
||||
// 4. In printer.go:
|
||||
// 1. Call the bye function from
|
||||
// inside the hello function
|
||||
//
|
||||
// 5. In main.go:
|
||||
// 1.
|
||||
// ---------------------------------------------------------
|
||||
|
||||
func main() {
|
||||
}
|
38
03-packages-and-scopes/exercises/02-scopes/solution/main.go
Normal file
38
03-packages-and-scopes/exercises/02-scopes/solution/main.go
Normal file
@ -0,0 +1,38 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
// as you can see, I don't need to import a package
|
||||
// and I can call `hello` function here.
|
||||
//
|
||||
// this is because, package-scoped names
|
||||
// are shared in the same package
|
||||
hello()
|
||||
|
||||
// but here, i can't access the fmt package without
|
||||
// importing it.
|
||||
//
|
||||
// this is because, it's in the printer.go's file scope.
|
||||
// it imports it.
|
||||
|
||||
// this main func can also call bye function here
|
||||
// bye()
|
||||
}
|
||||
|
||||
// printer.go can call this function
|
||||
//
|
||||
// this is because, bye function is in the package-scope
|
||||
// of the main package now.
|
||||
//
|
||||
// main func can also call this.
|
||||
func bye() {
|
||||
fmt.Println("bye bye")
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func hello() {
|
||||
// only this file can access the imported fmt package
|
||||
// when others also do so, they can also access
|
||||
// their own `fmt` "name"
|
||||
|
||||
fmt.Println("hi! this is inanc!")
|
||||
bye()
|
||||
}
|
30
03-packages-and-scopes/exercises/03-importing/main.go
Normal file
30
03-packages-and-scopes/exercises/03-importing/main.go
Normal file
@ -0,0 +1,30 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
// ---------------------------------------------------------
|
||||
// EXERCISE
|
||||
// 1- Import fmt package three times with different names
|
||||
//
|
||||
// 2- Print a few messages using those imports
|
||||
//
|
||||
// EXPECTED OUTPUT
|
||||
// hello
|
||||
// hey
|
||||
// hi
|
||||
// ---------------------------------------------------------
|
||||
|
||||
// ?
|
||||
// ?
|
||||
// ?
|
||||
|
||||
func main() {
|
||||
// ?
|
||||
// ?
|
||||
// ?
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
// For more tutorials: https://blog.learngoprogramming.com
|
||||
//
|
||||
// Copyright © 2018 Inanc Gumus
|
||||
// Learn Go Programming Course
|
||||
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
//
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
import f "fmt"
|
||||
import fm "fmt"
|
||||
|
||||
func main() {
|
||||
fmt.Println("hello")
|
||||
f.Println("hey")
|
||||
fm.Println("hi")
|
||||
}
|
Reference in New Issue
Block a user