背景 我在两个远程系统之间的ruby中编写了一个数据同步应用程序。 它应该用于具有类似功能的多个客户端。我的想法是实现一个默认模块,并在客户端命名空间模块中的应用程序初始化过程中加载此模块(并且可能包括扩展标准功能的其他自定义客户端类)。
generic.rb
module DemoClass class A def demo1 puts "Generic::A" end end class B def demo1 puts "Generic::B" end end end
在初始化过程中,客户端声明一个新的命名空间并包含默认函数。
但如何通过字符串声明新模块?
module ClientA require 'generic.rb' end module ClientB require 'generic.rb' module DemoClass class B def demo1 puts "Client2::DemoClass:B" end end end end