Review of some design patterns