With great power comes great responsibility. ActiveRecord gives us a wonderful mechanism for writing to a database, but Ruby itself gives us a universe of options for writing business logic on a layer above persistence.
What if you could write smaller business objects that are easier to test and are more maintainable? Let's discuss how we can do better by going back to basics with object oriented design, and by separating our business objects from our persistence.
Topics Covered Will Include:
- The Single Responsibility Principle and its importance to object oriented design
- ActiveModel and its suite of mixins that help us to separate concerns
- Effective unit testing
- Examples of common application paradigms where we can improve our designs with better, smaller objects.