MDA is a big reflection

反射,MDA的核心。反射就是把代码的潜藏结构(设计信息)挖掘、知识化、共享、可运行,给我们自已解释领域结构的权力,是在丢给编译器之前的机会。

反射需要考虑的技术问题:

1)反射连续性和上下自由性。

反射连续性,取决于语言族是否存在放之任意层次皆可的语言核心,如关系数据的关系和关系操作,代数语义的类别和操作。

是否一个M0对象的所有信息在多次反射后(如到达M3级)不丢失?,目前MDA 4 元层次做不到(有朋友找到的请告之)。

上下自由性,在运行时是否存在跳跃元层次的层级切换指令。

2)层通用操作集和是否存在跨层的操作集。

每层通用操作集,层的服务接口,主要表现为模型元素CRUD。

跨层的操作集,仍取决于语言族是否存在放之任意层次皆可的语言核心。

3)值表示和实例关系。

值表示,在特定层中,是否可手写出类型的实例,且该实例被该层次认可(语法错误除外)。
实例关系,包括物理实例化与逻辑实例化的映射规则和判定。
 
有待补充。。。

posted on 2005-01-20 02:38  阿飞外传  阅读(545)  评论(0编辑  收藏  举报

导航