语境
假定命名对象的约定
栏杆
就是这样:
/app/models/foo/bar.rb => class Foo::Bar
如果我有文件夹结构:
/app/models/foo/bar/object1.rb
/app/models/foo/bar/object2.rb
/app/models/foo/main.rb
要从我的主机调用这些对象,我必须执行以下操作:
class Foo::Main
def some_method
Foo::Bar::Object1.new
Foo::Bar::Object2.new
end
end
这个工作很好。但我的问题是:
问题
有什么方法可以改善
对象名称的可读性
?
在我的
Foo::Main
在同一命名空间中
Foo
有没有办法叫他们(
Foo::Bar::Object1.new
和
Foo::Bar::Object2.new
)用一个较短的名字?
我想给他们起个名字
Bar::Object1.new
和
Bar::Object2.new
,在此上下文中(或
Object1.new
和
Object2.new
)
预期
class Foo::Main
def some_method
Bar::Object1.new
Bar::Object2.new
end
end
这段代码是我所期望的,但它不起作用。