design patterns in golang

4 5 6 7 8