Null Object
Intent
Provide a place holder object for null cases such that code doesn’t have to handle this special case
Applicability
- an object requires a collaborator but sometimes the collaborator should do nothing
- clients should be able to ignore the difference between a real collaborator and a collaborator that does nothing