Successfully reported this slideshow.
Your SlideShare is downloading. ×

Null object pattern

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Design Patterns in Ruby
Design Patterns in Ruby
Loading in …3
×

Check these out next

1 of 7 Ad

More Related Content

Similar to Null object pattern (20)

Advertisement

Recently uploaded (20)

Null object pattern

  1. 1. Null Object Pattern Simplicity in doing nothing
  2. 2. What is a Design Pattern? ● A reusable solution to a common problem ● Kent Beck and Ward Cunningham applied to computer science in 1987 ● Defined in Design Patterns: Elements of Reusable Object-Oriented Software by GoF
  3. 3. Null Object Pattern ● Categorized as behavioral pattern ● Similar to the strategy, or state pattern ● Polymorphism ● null interface that can be used by a collaborator
  4. 4. When To Use ● Symptoms include null checks on properties ● Conditional logic to display an object ● Use of a placeholder
  5. 5. Demo
  6. 6. ● Bespoke: lib/search/solr/empty_result_set.rb ● Cheetah: lib/cheetah/messenger/null_messenger.rb ● Display_case: lib/display_case/exhibit.rb (null decorator) ● Factory_girl: lib/factory_girl/null_factory.rb Examples in our Code
  7. 7. Extra Reading Blog post on Factory Girl NullFactory class: http://robots.thoughtbot.com/design-patterns-in- the-wild-null-object

×