design pattern in "oops" - Search