Our original panel podcast, Ruby Rogues is a weekly discussion around Ruby, Rails, software development, and the community around Ruby.Become a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.
Special Guests: Aaron SumnerIn 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:
Everyday Rails
Everyday Rails Testing with RSpec: A practical approach to test-driven development
Ruby on Rails
@EverydayRails
Everyday Rails GitHub
Aaron@everydayrails.com
Picks:Charles
The 12 Week Year by Brian P. Moran and Michael Lennington