Different kind of design pattern