Hi,
> are you sure that we mean the same thing? I was talking about
> model transformations (from PIM to PSM and within the PSM),
> something that has little to do with refactoring.
While I also consider these two things to be separate,
model-to-model transformations would help a lot with the model
refactoring part, too.
Cartridges will have to change the source code, possibly with the
help of a source code transformation tool. This is easier if
there is only one standard, generic Java cartridge, than if a
number of cartridges have transformations into a subset of Java
(maybe subset is not the correct word here, I mean EJB, Hibernate,
Struts etc.).
The problem with the current cartridge design is that the
transformation definitions are implicit and scattered across
templates and helper classes. Thus, the source code changer of a
cartridge would have to cover all elements generated by the
cartridge and it would duplicate the logic of the cartridge. On
the other hand, if the PSM was the same kind of model as the PIM
is, and a separate cartridge generated the source code, then only
the PSM-to-code transformation logic would have to be included in
the source code changer module, decreasing the amount of duplicate
logic. Furthermore, we might find a way to let the source code
changer handle the initial code generation, too. In that case, no
logic would have to be duplicated. I know that this would make
the logic more difficult to express (no templates, at least not
Velocity).
-Attila
ps: Matthias, I'm looking forward to your comments on my model
refactoring e-mail (and code).
-------------------------------------------------------
This SF. Net email is sponsored by: GoToMyPC
GoToMyPC is the fast, easy and secure way to access your computer from
any Web browser or wireless device. Click here to Try it Free!
https://www.gotomypc.com/tr/OSDN/AW/Q4_2003/t/g22lp?Target=mm/g22lp.tmpl
_______________________________________________
Andromda-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/andromda-devel