-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.go
33 lines (27 loc) · 847 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package main
import "fmt"
func main() {
adadisFactory, _ := sportsFactory("adadis")
nekiFactory, _ := sportsFactory("neki")
dummyFactory, _ := sportsFactory("non-existent-brand")
adadisShoe := adadisFactory.makeShoe()
adadisShirt := adadisFactory.makeShirt()
nekiShoe := nekiFactory.makeShoe()
nekiShirt := nekiFactory.makeShirt()
dummyShoe := dummyFactory.makeShoe()
dummyShirt := dummyFactory.makeShirt()
printShoeDetails(adadisShoe)
printShirtDetails(adadisShirt)
printShoeDetails(nekiShoe)
printShirtDetails(nekiShirt)
printShoeDetails(dummyShoe)
printShirtDetails(dummyShirt)
}
func printShoeDetails(s Shoer) {
fmt.Printf("Shoe logo: %s\n", s.logo())
fmt.Printf("Shoe size: %d\n\n", s.size())
}
func printShirtDetails(s Shirter) {
fmt.Printf("Shirt logo: %s\n", s.logo())
fmt.Printf("Shirt size: %d\n\n", s.size())
}