design pattern cheat sheet - Search