Dabei spielt es keine Rolle, wie breit die Seite ist. Wenn dann noch
die ganze Seite eine Hintergrundfarbe erhält, die dem Ende des
Farbverlaufs entspricht, dann geht am Ende der Hintergrundgrafik
die Grafik in die Hintergrundgrafik über. Im Ergebnis ist eine
theoretisch unendliche Breite möglich, da sich die Grafik horizontal
wiederholt, und es ist eine unendliche Höhe möglich, da unten
nach der Hintergrundgrafik die Hintergrundfarbe angezeigt wird.
Im Falle eines schräg verlaufenden Hintergrundverlaufs ist diese
Vorgehensweise nicht möglich, denn es würde ein sich wiederholender
Farbverlauf horizontal und vertikal benötigt!
Fazit der Umsetzung des Webseitenentwurfs: Der Grafiker muss
wiederholt eingebunden werden. Einige Sachverhalte lassen sich gar
nicht realisieren, andere müssen etwas abgeändert werden.
Das Grundproblem dieses in der Realität häufig anzutreffenden Ablaufs
ist ein Medienbruch von der Entwurfs- zur Realisierungsphase.
Das Design entsteht in einer der Zielplattform fremden Umgebung,
in nicht weiterverarbeitbaren Formaten.
Online- und Offline-Anwendungen
Eine gängige Anforderung in der Praxis ist, eine Anwendung zu
schaffen, die als Online-Version zur Verfügung steht, und gleichzeitig
eine Offline-Version zu erstellen, die auf einern Client direkt
installiert werden kann.
Bislang kann dies mit einer Windows Form-Anwendung für den
Client und einer ASP.NET-Anwendung für das Web realisiert
werden. Beide Anwendungen können auch auf gleiche Codebestandteile
zugreifen, sodass Logik nicht redundant implementiert
werden muss. Das Frontend ist allerdings für beide Einsatzbereiche
vollständig neu zu gestalten und umzusetzen. Dies liegt daran, dass
die Designdateien einer Windows Form-Anwendung in keinster
Form mit dem HTML- und ASP.NET-Code einer Webanwendung
kompatibel sind.
Der resultierende hohe Aufwand und die einhergehende Fehlerverdopplung
aufgrund der doppelten Entwicklung enden erfahrungsgemäß
nicht mit der Realisierungsphase, sondern bringen insbesondere
im Betrieb auch den doppelten Pflegeaufwand mit sich. Im
Betrieb einer Offline- und Online-Anwendung potenzieren sich die
Aufwendungen der immer redundant auszuführenden Änderungen.
Neue Möglichkeiten mit WPF und Silverlight
Die Windows Presentation Foundation (WPF) ermöglicht einen
medienbruchfreien Arbeitsablauf vorn Prototyping bis zur Realisierung.
Das neue Dateiformat namens XAML stellt die zentrale
Neuerung dar. Es kann nicht nur Design, sondern auch Logik,
Interaktion, Animation und sogar 3D abbilden. Abbildung 1.12
zeigt ein imposantes Beispiel einer WPF-Anwendung inklusive 3D
und Animation.
Die neuen Funktionen
Das mit WPF eingeführte neue Dateiformat XAML beschreibt in
menschlich lesbarer Art eine unglaubliche Fülle an visuellen und
interaktiven Elementen. Details zu XAML erfahren Sie in Kapitel 2.
Neben den klassischen Steuerelernenten wie dem Button, der Listbox,
der Checkbox, stehen auch zahlreiche Layoutpanels - Steuerelemente
zur Positionierung von Elementen - zur Verfügung: ein
Abbildung 1.12: Eine WPF-Anwendung inklusive 3D und Animation
Grid zur tabellarischen Anordnung, ein StackPanel zur Platzierung
von Elementen unter- oder nebeneinander, ein WrapPanel, welches
so viele Elemente wie möglich in einer Reihe darstellt und anschließend
in der nächsten Zeile fortfährt, und und und ...
Die Steuerelemente selbst sind vollständig im Design anpassbar.
Und das ohne eine Zeile .NET-Code programmieren zu müssen. Es
lassen sich wiederverwendbare Vorlagen für Steuerelemente definieren
und diese per Drag & Drop auf andere Elemente anwenden.
Völlig neu für das UI-Design sind die Animations- und 3D-Visualisierungsmöglichkeiten.
Auch diese können ohne .NET-Code
vollständig in XAML visuell implementiert werden.
XAML und .NET-Code stellen zwei verschiedene Sichten auf
die Visualisierung einer .NET-Anwendung dar. Somit ist mit
.NET-Code auch alles abbildbar, was mit XAML abbildbar ist.
Allerdings ist - der eine oder andere mag es anders erwarten
- XAML-Code in der Ausführung schneller, da er direkt binär
abgelegt wird.
Jedes Element kann beliebig animiert werden, seine Eigenschaften
wie Farbe, Größe, Position usw. können auf einer Zeitachse intuitiv
verändert werden. Auch das Auslösen von Animationen kann in
WPF-Anwendungen ohne Programmierung visuell konfiguriert
werden.
3D-Objekte können samt Kamera, Licht und Texturen dargestellt
und animiert werden. Für die Erstellung von 3D-Objekten bieten
fast alle Hersteller von 3D-Software mittlerweile Plug-Ins an (Expression
Blender, Maya etc.), die einen XAML-Export ermöglichen.
Speziell für das XAML-3D-Modelling hat die Firma Erain das Tool
Zam3D auf den Markt gebracht.
Trennung von Code und Layout
auf technischer Ebene
Das neue Dateiformat XAML beschreibt nur das User Interface
einer gesamten Software. Die Logik bleibt nach wie vor Aufgabe
von Klassen, die per .NET-Code den weiterführenden Ablauf einer
Anwendung steuern, Eingabevalidierung durchführen, Datenbankund
Dateizugriff implementieren.
Im Ansatz ist die Herangehensweise der Trennung von Code und
Layout auch in der Vorgängertechnologie von WPF bei Windows
Forms-Anwendungen zu beobachten: Ein Window bestand schon
dort aus einer Codedatei, welche die Logik beinhaltete, und einer
hinterlegten Designdatei, welche die Anweisungen für die Platzierung
von Elementen beinhaltete. Diese Datei wurde bei der Platzierung
und dem Verschieben von Elementen in der Design-Ansicht
von Visual Studio automatisch generiert. Sie war allerdings selbst in
.NET geschrieben und das manuelle Bearbeiten wurde nur rudimentär
unterstützt.