trek (owner)

Revisions

gist: 125595 Download_button fork
public
Public Clone URL: git://gist.github.com/125595.git
ddd.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class PersistenceLayer
  # methods that make saving happen
end
 
class Gadget
  # domain behavior
end
 
g = Gadget.new
g.persistance_proxy = PersistenceLayer.new
 
g.persistance_proxy.write
 
# or class level
 
PersistenceLayer.write(g)
 
modular.rb
1
2
3
4
5
6
7
8
9
10
11
12
module PersistenceLayer
  # methods that make saving happen
end
 
class Gadget
  # domain behavior
  include PersistenceLayer
end
 
g = Gadget.new
g.write