我最近从C#转到了Ruby,我发现自己错过了制作可折叠标记代码区域的能力.我突然意识到做这种事情应该没问题:
class Example
begin # a group of methods
def method1
..
end
def method2
..
end
end
def method3
..
end
end
Run Code Online (Sandbox Code Playgroud)
......但这样做真的可以吗?方法1和方法2最终与方法3相同吗?还是有一些Ruby的习惯用法,我还没有看到呢?
添加任意Ruby代码以取悦编辑对我来说似乎不合理.我认为你应该尝试获得一个像样的文本编辑器,它可以配置为使用你在注释中放置的一些关键字来启用代码折叠,例如:
# region start AAA
some(:code, :here)
# region end AAA
Run Code Online (Sandbox Code Playgroud)
如果你允许我讽刺:你应该知道Ruby比C#更具表现力,优雅和漂亮,并且很可能没有任何Ruby代码应该首先被隐藏!;)
正如其他人所说,这不会改变方法定义.
但是,如果要标记方法组,为什么不使用Ruby语义来标记它们?您可以使用模块将代码拆分为属于一起的块.即使您不重用模块,这对于大型类也是很好的做法.当代码增长时,将模块拆分为单独的文件以便更好地组织将变得容易.
class Example
module ExampleGroup
def method1
# ..
end
def method2
# ..
end
end
include ExampleGroup
def method3
# ..
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
703 次 |
| 最近记录: |