Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Single Responsibility Rails

Single Responsibility Rails

Rae Bonfanti

November 18, 2014
Tweet

More Decks by Rae Bonfanti

Other Decks in Programming

Transcript

  1. S I N G L E R E S P

    O N S I B I L I T Y R A I L S @ W H O I S R A E
  2. S M A L L , R E S T

    F U L C O N T R O L L E R S
  3. P E R S I S T E N C

    E S E PA R AT E D F R O M D O M A I N
  4. M A N Y S M A L L O

    B J E C T S
  5. A R C H I T E C T U

    R E A S T R O N O M Y
  6. – K E N T B E C K “Software

    Design is about change”
  7. S I N G L E R E S P

    O N S I B I L I T Y
  8. - R E B E C C A W I

    R F S - B R O C K “A class has responsibilities that fulfill its purpose.”
  9. B U T W H AT D O E S

    I T L O O K L I K E ?
  10. – S A N D I M E T Z

    “Your first obligation is to take a deep breath and insist that it be simple.”
  11. M E T H O D T O M E

    T H O D O B J E C T
  12. M O A R M E T H O D

    T O M E T H O D O B J E C T ! !
  13. TA R G E T C O N T R

    O L L E R S A N D A C T I V E R E C O R D M O D E L S
  14. S M A L L E R O B J

    E C T S = = S C O P E D C O N C E R N S
  15. I T S TA R T E D W I

    T H Q U E RY
  16. E X C E L L E N T R

    E S O U R C E S • [Sandi Metz, Practical Object-Oriented Design in Ruby: An Agile Primer] (http://www.poodr.com/) • [Katrina Owens](http://www.confreaks.com/videos/1071-cascadiaruby2012- therapeutic-refactoring) • [Martin Fowler, Replace Method with Method Object](http:// refactoring.com/catalog/replaceMethodWithMethodObject.html)
  17. S I N G L E R E S P

    O N S I B I L I T Y R A I L S @ W H O I S R A E