smart developer Ein Code für alle (Vorschau)
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Schwerpunkt<br />
Mobile Business Apps<br />
und Maus zur Verfügung, sondern die Interaktion<br />
erfolgt über Gesten mit den Fingern.<br />
Auf diesen Umstand ist bereits während des<br />
Applikationsdesigns einzugehen.<br />
Der Benutzer sollte dabei in möglichst wenigen<br />
Schritten und mit möglichst wenig Interaktion<br />
an sein Ziel — die gewünschten Informationen<br />
— gelangen. Dies kann zum<br />
Beispiel dadurch erreicht werden, dass er in<br />
einer Liste verschiedene Werte zur Auswahl<br />
bekommt, anstatt zu verlangen, einen Wert<br />
manuell einzugeben.<br />
Zu vermeidende Elemente<br />
Ebenfalls ist es sinnvoll, auf spezielle Elemente<br />
und Funktionen zu verzichten, die<br />
zwar im Desktopumfeld weitverbreitet sind,<br />
jedoch im mobilen Umfeld unbedingt vermieden<br />
werden sollten. Hierzu zählen unter<br />
anderem die Weiterleitung beziehungsweise<br />
das Öffnen von Popups und Weiterleitungen<br />
mit target="_blank". Bereits bei Desktop-<br />
Browsern ist diese Art der Benutzerführung<br />
schwer zu handhaben. Auf mobilen Geräten<br />
ist dies jedoch nochmals sehr viel schwieriger,<br />
da viele Geräte Popups gar nicht erst unterstützen.<br />
Doch selbst wenn solch eine Unterstützung<br />
vorhanden ist, sorgen mehrere<br />
Bildschirmebenen auf einem Mobil-Display<br />
in der Regel <strong>für</strong> eine komplizierte Handhabung<br />
und sollten deshalb vermieden werden.<br />
Weiterhin beliebt sind auch HTML-Frames,<br />
um mehrere HTML-Dokumente in einer Ansicht<br />
zusammenzufassen und so eine anwendungsähnliche<br />
Oberfläche zu schaffen. Abgesehen<br />
davon, dass viele mobile Geräte<br />
Frames nicht unterstützen, führt diese Art<br />
der Aufbereitung einer Ansicht im mobilen<br />
Umfeld zu unzähligen Problemen: Oft funktioniert<br />
der Zurück-Button nicht oder nicht<br />
wie gewünscht, auch Lesezeichen anzulegen,<br />
ist meist nicht möglich. Zudem wird die<br />
Suche nach Inhalten erschwert und es entstehen<br />
Sicherheitsprobleme, da nicht immer direkt<br />
zu sehen ist, wenn verschiedene Frames<br />
aus verschiedenen Quellen stammen.<br />
Verzichten sollten Sie auch auf Spacer-Gifs,<br />
also auf Grafiken, die lediglich dazu dienen,<br />
Inhalte an bestimmten Positionen zu platzieren.<br />
Diese Grafiken erhöhen nicht nur die<br />
Anzahl an Requests, sondern verursachen<br />
unter Umständen auch höhere Kosten. Für<br />
jedes hinterlegte Bild muss beim Aufruf des<br />
Inhalts bzw. der Seite ein weiterer Request<br />
abgesetzt werden. Höhere Latenzzeiten und<br />
ein höheres Datenaufkommen sind die Folge.<br />
Deshalb sollte stattdessen auf Cascading<br />
Style Sheets (CSS) zurückgegriffen werden.<br />
Damit lassen sich Platzierungen durch Definition<br />
in einer zentralen Datei realisieren,<br />
was die Anzahl an Requests minimiert und<br />
eine saubere und fehlerresistentere Seitenstruktur<br />
zur Folge hat.<br />
Durch den <strong>Ein</strong>satz von CSS kann zudem<br />
auf Layout-Tabellen verzichtet werden. Dadurch<br />
erspart man sich unerwünschte und<br />
meist nicht vorhersehbare Seiteneffekte:<br />
Wird beispielsweise eine Tabelle vollständig<br />
dargestellt und überschreitet sie eine gewisse<br />
Breite, müssen Benutzer horizontal und vertikal<br />
scrollen, um Inhalte anzusehen. Diese<br />
Art der Navigation ist gerade bei einem mobilen<br />
Endgerät äußerst umständlich und<br />
sollte deshalb vermieden werden. Ebenfalls<br />
kann es passieren, dass der verwendete<br />
Browser die Tabelle beim Überschreiten der<br />
Displaybreite umbricht und die fehlenden<br />
Spalten in einer neuen Zeile einfügt. Diese<br />
clientseitige und geräte- sowie softwareabhängige<br />
Transformation ist nicht vorhersehbar<br />
und geht somit zulasten der Übersichtlichkeit.<br />
Außerdem vergrößert sich durch die<br />
Verwendung von Tabellen der zugrunde liegende<br />
HTML-<strong>Code</strong> erheblich, was zu einem<br />
unsauberen <strong>Code</strong> und erhöhtem Datenvolumen<br />
führt. Durch die Verwendung von CSS<br />
können diese Effekte vermieden werden.<br />
Semantisches HTML<br />
Um eine Aufblähung des <strong>Code</strong>s zu vermeiden,<br />
sollte man sich bei der Umsetzung von<br />
Seiten und Layouts nicht nur auf das rein optische<br />
Ergebnis konzentrieren. Vielmehr<br />
sollte man darauf achten, dass die drei <strong>für</strong><br />
ein gutes Ergebnis notwendigen „Säulen“ Inhalt,<br />
Design und Struktur strikt voneinander<br />
getrennt bleiben und auf <strong>alle</strong> drei Punkte in<br />
gleichem Maße Wert gelegt wird. Im Hinblick<br />
auf die Struktur sollte man zudem beachten,<br />
dass das zugrunde liegende Konstrukt an<br />
HTML-Elementen eine gesunde und möglichst<br />
semantische Struktur besitzt. Doch<br />
was genau ist darunter zu verstehen?<br />
Das World Wide Web stellt eine riesige<br />
Masse an Inhalten und Information bereit.<br />
Diese Daten stehen innerhalb des WWW<br />
normalerweise jedoch in keinerlei Beziehung<br />
zueinander. Das WWW bietet lediglich eine<br />
Art Präsentationsplattform, die die erfassten<br />
Daten darstellt.<br />
Um Inhalte tatsächlich als solche zu erkennen<br />
und erfasste Daten entsprechend deuten<br />
zu können, entwickelte Tim Berners-Lee (der<br />
„Erfinder“ des WWW) das Konzept des Semantic<br />
Web. Dieses beruht darauf, dass das<br />
Internet aus Daten besteht, die direkt oder<br />
indirekt von Maschinen interpretiert und verarbeitet<br />
werden können. <strong>Ein</strong> Punkt, der als<br />
26<br />
02/2011 <strong>smart</strong>-<strong>developer</strong>.de