Возможно, вам следует подумать о том, чтобы поместить их в каталог с именем messengers
в app
, например:
- app
|- messengers
|- messenger_base.rb
|- email_messenger.rb
|- sms_messenger.rb
, а затем определить свои классы следующим образом:
class MessengerBase
#methods defined here:
end
class EmailMessenger < MessengerBase
#send email and other email related stuff
end
class SmsMessenger < MessengerBase
#send text messages and other related stuff
end
IMO,имя типа EmailMessenger
понятнее, чем Email
.При этом автозагрузка должна работать нормально и не требует require
операторов.