Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Moviegoer
- attr_accessor :name, :street, :phone_number, :zipcode
- validates :phone_number, # ...
- validates :zipcode, # ...
- def format_phone_number ; ... ; end
- def verify_zipcode ; ... ; end
- def format_address(street, phone_number, zipcode) # data clump
- # do formatting, calling format_phone_number and verify_zipcode
- end
- end
- # After applying Extract Class:
- class Moviegoer
- attr_accessor :name
- has_one :address
- end
- class Address
- belongs_to :moviegoer
- attr_accessor :phone_number, :zipcode
- validates :phone_number, # ...
- validates :zipcode, # ...
- def format_address ; ... ; end # no arguments - operates on 'self'
- private # no need to expose these now:
- def format_phone_number ; ... ; end
- def verify_zipcode ; ... ; end
- end
Add Comment
Please, Sign In to add comment