如果我有一个Ruby类和Gemfile千行的类,那么解决class => gem
关系的最佳方法是什么?
答案 0 :(得分:1)
拥有 1000行的Gemfile
可能会成为痛苦的主要来源,尤其是在升级库时 - 这是一个巨大的依赖项列表!!
通常只需查看命名约定,通常可以明显看出哪个gem是源代码。但是,如果没有,您可以使用Method#source_location
跟踪它:
> puts method(:mystery_method).source_location
> puts MysteryClass.method(:initialize).source_location
如果您使用pry
,那么还有一个方便的命令用于显示类/方法的源代码(使用show-method
命令,或简称为$
):
(pry) > $ mystery_method
(pry) > $ MysteryClass
另外值得一提的是Method#super_method
- 在跟踪复杂继承/混合的行为时非常有用。