Hi.

I need to create a class "Getter" that exposes a method "retrieve"
implemented differently depending on what backend is chosen.

The public API could be something like:
getter = Getter.new(:backend => "DB")
getter.retrieve (where retrieve is implemented in a separate module or
class called DB)

What's the best way to design such a class/module structure?

-M.