zoukankan      html  css  js  c++  java
  • LiteMda Design Ver 0.1

     

    基于昨天双鱼座和ccBoy的建议,对LiteMda的设计作了部分修改,主要改变的部分如下:

    1、不再从Tables生成,而是先从XMI生成一个Xml Profile For Model,再由该Profile生成Tables及其他配置文件和代码,生成Tables方面计划采用Provider模式,以使数据库类型对程序员透明,这样还有几点好处,一是解除代码生成和XMI的耦合,二是,如果有部分元数据不能直接从XMI获得,也可以由用户在该Profile中补充;

    2、对于Domain Objects,希望能实现对程序员透明的O/R Mapping,实现“继承、聚合、合成、关联、Hierarchy”五种类关系,将XMI中指定的类attribute和methods,分别分解到两组接口,关于五种关系的映射方式,期待看看双鱼座兄在Kanas.Net 1.3地实现方式;

    3、增加Business Objects这一层,用以实现主要的业务逻辑,并向Business Manager暴露自定义接口以接受其管理,这一层也相当于ccBoy所说的“Action/Services Agent层”;

    -----------

    关于XMI还是E/R Model来承载元数据的问题,我还是倾向于XMI,主要还是其通用性和可扩展性方面的优势,并且,通过XMI我可以在UML中指定类的行为,目前虽然只用到静态类图,但将来解析其他动态图也不是不可能,而XMI描述信息不全的问题,则通过修改Xml Profile For Model的方式来扩展。

    //文章结束

  • 相关阅读:
    学习日志---4.5.6
    学习日志---3
    学习日志---2
    学习日志---1
    阅读《大型网站技术架构:核心原理与案例分析》第五、六、七章
    淘宝网的质量属性的六个常见属性场景
    虚继承 private virtual class
    C++ 类中什么时候需要一个operator<
    C++ 中关于 输出的重定向
    C++ 元编程 学习二
  • 原文地址:https://www.cnblogs.com/teddyma/p/191164.html
Copyright © 2011-2022 走看看