Ruby使用Monkey Patch猴子补丁方式进行程序开发的示例

来源:爱站网时间:2020-05-21编辑:网友分享
Monkey Patch在程序运行的时候需要附上代码段,而Monkey Patch的技巧是比较特殊的,今天大家可以通过爱站技术频道介绍的Ruby使用Monkey Patch猴子补丁方式进行程序开发的示例进行学习,希望能对大家有所帮助。

Monkey Patch在程序运行的时候需要附上代码段,而Monkey Patch的技巧是比较特殊的,今天大家可以通过爱站技术频道介绍的Ruby使用Monkey Patch猴子补丁方式进行程序开发的示例进行学习,希望能对大家有所帮助。

词源
Monkey patch 最早被称作 Guerrilla patch,形容这种补丁像游击队员一样狡猾。后来因为发音相似,被称为 Gorilla patch。因为大猩猩不够可爱,后改称为 Monkey patch。

使用场景
以我的理解,Monkey patch 有两种使用场景:
紧急的安全性补丁,即 Hotfix;
修改或扩展库中的属性和方法。

例子:
alias:

class Monkey2 

include:

module Helper 
 def help 
  puts "Help..." 
 end 
  
 def method1 
  puts "helper method1..." 
 end 
end 
 
class Monkey 
 include Helper 
 def method1 
  puts "monkey method1..." 
 end 
end 
 
monkey = Monkey.new 
monkey.help 
monkey.method1#因为重名,当前类的方法优先 


undef:

class Monkey 
 def method1 
  puts "This is method1" 
 end 
end  
 
class Monkey2 

我们还可以使用undef_method或者remove_method实现undef 同样的功能,例子如下:

class Monkey2 
 remove_method :method1 
 undef_method :method2 
nd 


在使用猴子补丁的时候,还应注意如下事项:
1、基本上只追加功能
2、进行功能变更时要谨慎,尽可能的小规模
3、注意相互调用

上述是爱站技术频道小编带给大家的Ruby使用Monkey Patch猴子补丁方式进行程序开发的示例,我们已经见过很多编程的配置,如果说自己学习很麻烦,那么选择一个像爱站技术频道这样的学习平台,这里还有很多知识等待你的发掘。

上一篇:解析proxy代理模式在Ruby设计模式开发中的运用

下一篇:win10下使用virtualbox + vagrant配置ruby开发机环境

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载