
上QQ阅读APP看书,第一时间看更新
7.1 元编程
7.1.1 元编程介绍
元编程(Meta Programming)是指某类计算机程序的编写,这类计算机程序编写或者操纵其他程序(或者自身)作为它们的数据,或者在运行时完成部分本应在编译时完成的工作。很多情况下,与手工编写全部代码相比工作效率更高。编写元程序的语言称为元语言,被操作的语言称为目标语言。
就像高阶函数可以看成是更高层次的抽象,把函数行为当作参数进行传递或者返回函数本身。元编程也是对代码的一次抽象,可以让程序在编译期间生成代码,或者允许程序在运行时改变自身的行为,从而生成代码。
元编程的英文前缀Meta源自希腊词,本意为“在…后,变换,以上”,类似于拉丁语的Post。如今meta前缀是指:关于/描述事物自身的事物。譬如meta-data就是“关于/描述数据的数据”,而meta-programming也是由此而来,是“关于/描述程序的程序”。这样一来,元编程就很好理解了。