欢迎来到天天文库
浏览记录
ID:39065867
大小:119.71 KB
页数:10页
时间:2019-06-24
《Polymorphic Templates多态模板》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、PolymorphicTemplatesAdesignpatternforimplementingagilemodel-to-texttransformationsGáborKövesdán,MárkAsztalosandLászlóLengyelBudapestUniversityofTechnologyandEconomics,Budapest,Hungary{gabor.kovesdan,asztalos,lengyel}@aut.bme.huAbstract.Model-to-texttran
2、sformationsareoftenusedtoproducesourcecode,documentationorothertextualartefactsfrommodels.Acommonwayofimple-mentingthemisusingtemplatelanguages.Templatesareeasytoreadandwrite,however,theytendtobecomelongandcomplexasthecomplexityofthemeta-modelgrows.This
3、paperproposesadesignpatternthatallowsforthedecompo-sitionofcomplextemplateswithbranchingandconditionsinsideintosimplerones.Itsmainideaisthatthecodegeneratordoesnotknowabouttheconcretetemplatesthatarecalled:theyaredeterminedbytheobjectsofthemodelbeingtra
4、versed.Theconcretetemplateisselectedthroughobject-orientedpolymor-phism.Thepatternresultsinaflexiblecodegeneratorwithsimpletemplates,goodextensibilityandseparationofconcerns.Thisagilityfacilitatesthedesignforextensionandchanges,whichisparamountnowadays.
5、Keywords:Modeling·Domain-SpecificModeling·ModelTransformation·CodeGeneration·DesignPattern1IntroductionThispaperpresentsadesignpatternthatcanbeusedtocreateflexiblemodel-to-text(M2T)transformation.ThepatternisapplicableoncomplexM2Ttemplatesandpro-posesan
6、object-orienteddecompositionforthegenerator,themodelobjectsandthetemplates.Thisdecompositionachievesreducedcomplexity,separationofconcerns,improvedreadabilityandmostimportantlyimprovedmaintainabilityandflexibility.WebelievethatthePolymorphicTemplatespat
7、ternwillgreatlyhelpdevelopersofallkindsofM2Ttransformationsindesigningrobustcodegeneratorsthatareeasytomain-tainandextend.Therestofthispaperisorganizedasfollows.Section2brieflyexplainsthefounda-tionsofM2Ttransformationsusingtemplatelanguages.Section3lis
8、tsexistingworkavailableonthesubject.Section4describesthedesignpatterninaformatthatissimilartothosethatareusedindesignpatterncatalogs.Section5concludes.2BackgroundM2Ttransformationsareoftenusedforgeneratingsourcecode,documentation
此文档下载收益归作者所有