RR 353: Removing Business Logic from Rails Controllers with Aaron Sumner

00:00 3443
Download MP3

Panel:

  • Charles Max Wood
  • David Richards

Special Guests: Aaron Sumner

In this episode of Ruby Rogues, the panel discusses removing business logic from Rails controllers with Aaron Sumner. Aaron is a long time Ruby developer, using mostly Rails, writes a blog called Everyday Rails, and most people know him from his book, Everyday Rails Testing with RSpec: A practical approach to test-driven development. They discuss service objects, the pros and cons of using them, and they emphasize not trying to change something all at once, but gradually.

In particular, we dive pretty deep on:

  • Aaron intro
  • How to test code without controller tests?
  • The cons to controller tests
  • Soft deprecation
  • If you’re not writing controller tests, what are you writing?
  • Get the code out of the controllers and test it in more isolation
  • Service objects
  • Problem with a controller having a lot of business logic in it
  • Rails
  • Cons of service objects
  • Using a service object inside of a controller
  • Pros of service objects
  • Getting smaller can happen step-wise
  • Re-architecting should happen gradually not all at once
  • When you write a service object, there is a flow to it
  • How writing his book impacted his views
  • Start small
  • And much, much more!

Links:

Picks:

Charles

David

Aaron

Transcript

Sign up for the Newsletter

Join our newsletter and get updates in your inbox. We won’t spam you and we respect your privacy.