Vytváření a konfiguraci aplikace z modelů
Můžete generovat nebo nakonfigurovat částí aplikace z modelu.Model může být v UML nebo linku DSL.
Model představuje požadavky přímo než kód.Pomocí chování aplikace přímo vyplývající z modelu, můžete reagovat na změněné požadavky aktualizace mnohem více rychle a spolehlivě než kód.Ačkoli některé počáteční práce je třeba nastavit odvození, investice je vrácena, pokud očekáváte, že změny v požadavcích, nebo pokud plánujete provádět několik variant výrobku.
Generování kódu aplikace z modelu
Nejjednodušší způsob generování kódu je pomocí text šablony.Může generovat kód ve stejném Visual Studio řešení, ve kterém zachovat modelu.Více informací naleznete:
Tato metoda je snadné postupně.Spustit s aplikací, která funguje pouze pro konkrétní případ a zvolit několik částí, kterou chcete měnit z modelu.Zdrojové soubory těchto částí přejmenujte, změní se text soubory šablon (.tt).V tomto okamžiku .cs zdrojové soubory budou automaticky generovány ze souborů šablony aplikace bude pracovat stejně jako před.
Potom můžete přijmout jednu část kódu a nahradit text šablony výraz, který čte modelu a generuje část zdrojového souboru.Alespoň jednu hodnotu modelu by měl generovat původní zdroj, takže můžete znovu spustit aplikaci a bude pracovat jako dříve.Po vyzkoušení různých modelů hodnot můžete přesunout výrazy šablony vložit do jiné části kódu.
Tato metoda přírůstkové znamená generování kódu je obvykle přístup nízké riziko.Výsledné aplikace obvykle provést téměř stejně jako verze rukou.
Však pokud začnete s existující aplikací, je možné, že je nutné oddělit odlišné chování, které se řídí model tak, že může být rozlišena nezávisle mnoho optimalizace struktury programu.Doporučujeme posoudit tento aspekt aplikace při odhadování nákladů projektu.
Konfigurace aplikace z modelu
Pokud chcete měnit chování aplikace za běhu, nelze použít generování kódu, který generuje zdrojový kód před zkompilování aplikace.Místo toho můžete navrhnout aplikace ke čtení modelu UML nebo DSL a odpovídajícím způsobem měnit své chování.Více informací naleznete:
Tuto metodu lze použít také postupně, ale je na začátku další práce.Musíte napsat kód, který bude číst modelu a vytvořit rámec, který umožňuje jeho hodnot proměnné části přístupné.Provádění obecné proměnné částí je dražší než generování kódu.
Obecná aplikace obvykle provádí méně dobře než jeho konkrétní protějšky.Pokud výkon je rozhodující, plánu projektu by měly zahrnovat posouzení tohoto rizika.
Vývoj odvozené aplikace
Mohou být užitečné následující obecné pokyny.
Spuštění určitých pak generalize. Nejprve napište konkrétní verzi aplikace.Tato verze by měly fungovat v jedné sadě podmínek.Pokud jste spokojeni že pracuje správně, můžete některé ji odvodit z modelu.Odvozené části postupně rozšiřovat.
Například návrh webu, který má určitou sadu webových stránek před návrhem webové aplikace, která nabízí stránky, které jsou definovány v modelu.
Aspekty variant modelu. Identifikujte aspekty, které budou lišit buď mezi jeden nasazení nebo jako požadavky časem změnit.To jsou aspekty, které by měly být odvozeny z modelu.
Například pokud sada webových stránek a vazeb mezi jejich změny ale styl a formátování stránek je vždy stejný, pak by měl popisovat odkazy modelu, ale nemá formát stránky popisují.
Zvláštní obavy. Pokud proměnná aspekty lze rozdělit na samostatné oblasti, použijte pro jednotlivé oblasti samostatné modely.ModelBus lze definovat operace, které ovlivňují modely a omezení mezi nimi.
Například definovat navigaci mezi webové stránky a jiný model pro definování rozvržení stránek pomocí jednoho modelu.Další informace naleznete v tématu Jak: Modely UML integrovat s ostatními modely a nástroje.
Model požadavek není řešení. Návrh modem DSL nebo přizpůsobení UML, takže popisuje požadavky uživatelů.Naopak návrh není zápisu podle proměnné aspekty provádění.
Webový navigační model má představovat například webové stránky a hypertextové odkazy mezi nimi.Webový navigační model má představovat nejsou fragmenty kódu HTML nebo třídy v aplikaci.
Generovat nebo interpretovat? Pokud požadavky pro konkrétní nasazení mění zřídka, generovat kód programu z modelu.Požadavky mohou často měnit nebo mohou existovat společně ve stejné nasazení více variant, psát aplikace tak, aby čtení a interpretaci modelu.
Například pokud rozvíjet řadu různých a nainstalována samostatně weby pomocí modelu webu, pak by generování kód serveru z modelu.Ale ji použít model řízení webu, který mění každý den a pak je vhodnější psát webový server, který čte modelu a proto představuje webu.
UML nebo DSL? Zvažte vytvoření zápis modelování pomocí Stereotypy UML rozšířit.Pokud žádné diagramu UML, který odpovídá účelu, definujte DSL.Ale předejít narušení standardní sémantice UML.
Například třída diagramu UML je kolekce polí a šipky; Pomocí tohoto zápisu lze teoreticky definovat cokoli.Ale nedoporučujeme používat diagram třídy s výjimkou případů, kdy jsou ve skutečnosti popisující sadu typů.Nelze například přizpůsobit diagramy tříd pro popis různých typů webových stránek.
Viz také
Koncepty
Jak: generování souborů z modelu UML
Jak: čtení modelu UML v kódu programu
Jak: Otevřete Model ze souboru v kódu programu
Generování kódu návrhu pomocí šablon Text T4