hook杂思-面向函数编程
2024-09-03 05:06:35
hook:方法拦截
以函数单元为编程对象;
在编译时或运行时进行函数单元的替代、修改、功能添加操作;
所有的操作都不是在原始编码时完成的;
函数单元作为参量、操作对象、编码对象存在于机制中;
机制:
1、回掉注册机制;
2、方法替换机制;
3、动态代理机制;
动态代理:
面向对象—对象方法拦截(一组);
hook:
单个函数的拦截、信息提取;
动态代理:
类的所有函数的拦截转发;
aop模型:
业务逻辑+交叉逻辑+织入机制
面向切面编程—面向现有功能编程—面向修改编程—面向操作编程—面向hook编程—面向交叉逻辑编程
在不修改现有功能的情况下,改变现有功能的实现:
在功能函数的前后插入功能或替换功能函数;
java:静态语言;
基于dsl和注解的动态代理机制;
oc:
基于isa+方法替换的动态语言机制;
目标不同:
对现有逻辑的修改和添加:
热修复:jspatch、
交叉逻辑植入;
最新文章
- C#的扩展方法解析
- 解决xcode升级之后安装的插件失效
- centos 6.x安装rvm 配置 Ruby开发环境
- php 月初,月末时间大统计
- js整理4
- .NET跨平台实践:用C#开发Linux守护进程
- Run python as a daemon process
- Natural Language Processing Computational Linguistics
- zw版【转发·台湾nvp系列Delphi例程】HALCON FillUp1
- 04文件与IO
- ruby gems安装镜像
- 自己动手写spring容器(2)
- java.lang.IllegalArgumentException: Wrong FS ...异常的解决
- ASP.NET MVC默认配置如有跳转到指定的Area区域中的对应程序中
- 【Python实践-3】汉诺塔问题递归求解(打印移动步骤及计算移动步数)
- js检测访问设备
- 用pdf.js实现在移动端在线预览pdf文件
- day73 Django框架之URL
- Ubuntu下vim打开文件时,提示请按ENTER或其它命令继续
- HashMap中capacity、loadFactor、threshold、size等概念的解释<;转>;