design patterns for go

1 2 3 4