2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
2 UML-based Web Engineering - UWE - Ludwig-Maximilians ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Stattdessen wurde er in sogenannte Partials ausgelagert, die durch render-Befehle in Zeile<br />
3 und 6 in das Template integriert werden. Ein Partial kann als partielles Template verstanden<br />
werden, das üblicherweise zur Auslagerung von ERb-Code verwendet wird, der in mehreren<br />
Templates (oder mehrmals in ein und demselben Template) wiederverwendet wird. Zwar<br />
werden die beiden Partials, die in das Layout-Template integriert sind, (zur Zeit) an keiner<br />
anderen Stelle in der View des PVS eingebunden; aber dennoch hat es sich hier empfohlen,<br />
diese beiden UI-Komponenten aus dem Layout-Template zu extrahieren, um die Flexibilität<br />
und Übersichtlichkeit des Codes zu erhöhen.<br />
Der Code-Ausschnitt liefert im Übrigen auch ein gutes Beispiel dafür, wie zusätzlicher<br />
HTML-Code benötigt wird, um die intendierte Positionierung der betreffenden UI-<br />
Komponenten zu realisieren 73 . Um die Seite vertikal in zwei Hälften zu teilen, deren eine von<br />
der Seitenleiste und deren andere von Navigationsmenü und Hauptregion befüllt wird, ist ein<br />
zusätzliches -Element vonnöten (Zeile 5), das die rechte Hälfte der Seite repräsentiert.<br />
Durch geeignete Deklarationen der style-Attribute dieses Division-Elements sowie des<br />
s, der für die linke Seite zuständig ist (Zeile 2), wird eine Anordnung wie im<br />
Modellausschnitt umgesetzt.<br />
Partials kamen auch zum Einsatz, um die Vererbungshierarchie für das Publikationsformular<br />
des Präsentationsmodells zu implementieren. Es ist klar, dass diese Konstruktion nicht 1:1<br />
umgesetzt werden konnte, da ERb-Templates nicht dem Paradigma der Objektorientierung<br />
gehorchen. Sie konnte jedoch zu einem bestimmten Grad simuliert werden durch Verwendung<br />
eines Haupt-Templates, in dem die Grundstruktur des Publikationsformulars definiert wird,<br />
und einiger publikationstyp-spezifischer Partials, in die der Code für diejenigen Eingabefelder<br />
ausgelagert wurde, die speziell für den jeweiligen Publikationstyp benötigt werden.<br />
1 <br />
...<br />
2 'publications/form_partials/bibtex_title')%><br />
3 <br />
...<br />
4 'publications/form_partials/<br />
5 additional_information') %><br />
...<br />
6 <br />
In Zeile 1 wird mit Hilfe von eingebettetem Ruby-Code ein HTML-Formular definiert. In<br />
Zeile 2 und 4/5 werden einige seiner festen Bestandteile (Eingabefelder für Titel/BibTeX-<br />
Schlüssel sowie für zusätzliche Informationen wie DOI und Abstract), die ebenfalls in Partials<br />
ausgelagert worden sind, über den schon bekannten render-Befehl in das Template<br />
integriert. Zeile 3 enthält den Aufruf der selbst implementierten Hilfsmethode<br />
get_type_dependent_section, die für die Integration des Partials für die<br />
73 Diese Positionierung wird im Modell durch die spezifische Anordnung der drei Komponenten der<br />
«presentationPage» zwar angedeutet, gehört aber nicht zu den bindenden Vorgaben des Modells – wie<br />
schon weiter oben erwähnt, macht das <strong>UWE</strong>-Präsentationsmodell streng genommen keine Aussagen über<br />
topologische Eigenschaften von UI-Elementen.<br />
88