It’s well described here: http://api.rubyonrails.org/classes/ActiveSupport/Concern.html
In short:
-
Concerns allow you to use
#includedand#class_methodsinstead ofself.includedhook with additional moduleClassMethodscreation; -
Concerns give you a better dependency resolution for modules included in each other;