Ruby中命名空间函数的最佳做法(新手问题)
发布时间:2020-12-16 21:34:15 所属栏目:百科 来源:网络整理
导读:(StackOverflow告诉我这个问题是“主观的,很可能被关闭”…好吧,我会给它一个镜头,不管) 我正在编写一堆帮助方法(对于TextMate包),我想(我需要)让它们整齐地命名空间. 这些方法实际上只是功能,即它们不在任何范围之外的任何操作,因此并不属于一个类.没有什么
(StackOverflow告诉我这个问题是“主观的,很可能被关闭”…好吧,我会给它一个镜头,不管)
我正在编写一堆帮助方法(对于TextMate包),我想(我需要)让它们整齐地命名空间. 这些方法实际上只是功能,即它们不在任何范围之外的任何操作,因此并不属于一个类.没有什么需要实例化. 到目前为止,我一直在做这件事,工作很好 module Helpers::Foo module_function def bar # ... end end Helpers::Foo.bar # this is how I'd like to call the method/function 但是最好是: 我知道这是一个很开放的问题,但我真的只是想听听人们在做什么. 解决方法
我也喜欢
module Foo def self.bar "bar" end end Foo.bar #=> "bar" 要么 module Foo def Foo.bar "bar" end end Foo.bar #=> "bar" 但可能倾向于前者,我认为自我.真的是描述性的. 编辑:阅读评论后,我提出了第三个选项,我更喜欢可读性.从技术上讲,我认为这将被定义为扩展Eigen类中包含的方法. module Foo module ClassMethods def baz "baz" end end extend ClassMethods end Foo.baz #=> "baz" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容