元编程沉思录

Posted feng9exe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了元编程沉思录相关的知识,希望对你有一定的参考价值。

用代码来操纵代码(增删查该代码原来的逻辑和功能)

就是无关业务逻辑,只跟当前代码结构相关的代码。

 

元编程的要素

1、元数据(描述目标的(运行时)结构、语法结构、二进制文件结构等)

2、元逻辑(系统和目标语言提供了什么样的支持来对元数据进行修改)

3、元编程(根据元数据、元逻辑和需求开发出的部件)

4、部署与运行机制。

 

一、元编程的编程层级(元数据)

1、代码级;

2、字节码级别;

3、可执行文件文件级别

4、运行时结构级别

 

二、元编程的理论基础(元逻辑)

1、工具代码:掌握目标语言的语法、结构等语言规则,按照输入(指令)信息生成代码;

2、补丁代码:根据平台和目标语言提供的编程接口(反射、运行时结构操作接口),对按照补丁逻辑对目标进程的结构进行维护和运行时解释。

 

三、元编程的代码形态(元编程)

补丁代码、工具代码

工具代码:生成代码的代码、代码级

补丁代码:修改、维护、添加功能的代码:运行时结构级别

 

四、元编程的的部署形态

1、工具代码:不用部署,在应用开发时直接使用

2、补丁代码:

1)静态部署,和应用代码一起发布;

2)动态部署,通过网络和动态链接库的形式部署;

 

五、补丁的二进制兼容性(代码兼容性)

补丁代码和平台代码是否为同一种语言生成;

如果不是,需要解释系统和通信系统的支持;

 

六、动态部署元编程

在运行时加载补丁代码,并完成相关功能的维护和解释。

 

以上是关于元编程沉思录的主要内容,如果未能解决你的问题,请参考以下文章

什么样的C++模板编程可以称为“元编程”? [关闭]

复合是编程的本质-供参考

干货丨DolphinDB元编程教程

Groovy编译时元编程 ( 编译时元编程引入 | 声明需要编译时处理的类 | 分析 Groovy 类的 AST 语法树 )

GroovyMOP 元对象协议与元编程 ( 使用 Groovy 元编程进行函数拦截 | 通过 MetaClass#invokeMethod 方法调用类其它方法 )

Python元编程-遗忘的远古凶兽