Hi David,

Agree with a lot of what Lee said, however I don't think it will be excessively 
difficult refactor to make use of DI (although I have found it easier to 
implement on a fresh application), it's something you can do gradually and I 
find that the side-effects of using DI (decoupled objects, stricter boundaries 
and smaller interfaces) tend to be something that simplfies maintaining 
existing code, adding new features and testing.

There's a small community of Ruby developers (although growing quite rapidly) 
implementing tools to simplify using these patterns at http://rom-rb.org and 
http://dry-rb.org which I think you might find useful if you decide to follow 
that path. Particularly:

https://github.com/dry-rb/dry-container
https://github.com/dry-rb/dry-auto_inject
https://github.com/dry-rb/dry-validation

You may also find https://github.com/dry-rb/dry-component useful if you're 
working on a Rails-free stack.

There's recent talk by Tim Riley (rom-rb/dry-rb core dev) at RedDotRubyConf in 
Singapore that's worth a watch too - https://www.youtube.com/watch?v=6ecNAjVWqaI

We also use Gitter so feel free to join the chat for help/more info: 
https://gitter.im/dry-rb/chat

-- 
You received this message because you are subscribed to the Google Groups 
"North West Ruby User Group (NWRUG)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send an email to [email protected].
Visit this group at https://groups.google.com/group/nwrug-members.
For more options, visit https://groups.google.com/d/optout.

Reply via email to