Many of us developers love arguing about architecture that we dislike and refactoring our code to loosen coupling and weaken dependencies between our objects. Unfortunately, some overarching parts of our applications, like persistence, networking, notifications, logging, auditing, are scattered in our code, forcing us to specific explicit dependencies between them and our domain objects.
Aspect-oriented programming is a solution to the problem of some features affecting virtually all business requirements, and expresses that problem in a compact and DRY way.
In this practical talk, Camille will:
- introduce the basic concepts of AOP, and how it is still relevant even in a non-statically typed language like Ruby
- show you how to easily and quickly leverage some AOP principles in your Rails application
- play with some AOP-friendly constructs in Ruby 2, in particular TracePoint
- walk you through two existing Ruby frameworks to practice Aspect-Oriented Programming
She will even attempt to prove that not all things coming from the Java world are necessarily bad.
YOU MAY ALSO LIKE:
- How to Visually represent memory leaks in Ruby applications (SkillsCast recorded in February 2014)
- Using software engineering practices to improve engineering management (SkillsCast recorded in October 2019)
- How to stop worrying, love the SPA and appreciate Rails (SkillsCast recorded in October 2019)