they are dems of design pattern