Blended Shelf - Human-Computer Interaction - Universität Konstanz
Blended Shelf - Human-Computer Interaction - Universität Konstanz
Blended Shelf - Human-Computer Interaction - Universität Konstanz
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Umsetzung<br />
2D-Controls<br />
Die 2D-Controls (beispielsweise das Sortiermenü) wurden nach gängigen WPF-Prinzipien umgesetzt.<br />
Da ihr Erscheinungsbild deklarativ in XAML definiert ist, können sie im visuellen Designwerkzeug<br />
von Visual Studio betrachtet und bearbeitet werden. Die Controls beherrschen<br />
Animationen wie das Hereinfahren von der Seite des Bildschirms. Sie beziehen wesentliche Eigenschaften<br />
(wie beispielsweise die Schriftfarbe) von den zentralen Einstellungen, so dass die visuelle<br />
Erscheinung anwendungsübergreifend geändert werden kann.<br />
Converter<br />
Diese Klassen erlauben es, einen Wert in zwei Richtungen zu konvertieren. Ein Beispiel für den<br />
Einsatz eines Converters im BS ist der PagesToPixelsConverter. Mit diesem können Seitenzahlen<br />
in Pixel umgerechnet werden und umgekehrt. Dabei nutzt der Converter für die Berechnung einen<br />
Faktor, der in den Einstellungen vergeben werden kann, und addiert zusätzlich einen ebenfalls<br />
konfigurierbaren Wert, um die Stärke des Einbands zu berücksichtigen. Weitere Converter werden<br />
für externe Daten benötigt, beispielsweise für die Größenangaben von Amazon: Diese werden oft<br />
als das Hundertste eines Zolls deklariert.<br />
Helpers<br />
Wie die Bezeichnung schon sagt, handelt es sich hierbei um anwendungsübergreifende Helferklassen.<br />
Diese ermöglichen die Generierung graphischer QR-Codes aus beliebigen Zeichenketten. Des<br />
Weiteren können programmatisch Screenshots angefertigt werden. Zusätzlich werden durch eine<br />
Helferklasse sämtliche Instanzen der Controls in einer Registry verfügbar gehalten, so dass diese<br />
nicht als Parameter durch die Anwendung gereicht werden müssen.<br />
6.3.4 Daten<br />
Einen wesentlichen Teil eines Recherchesystems stellen die zugrundeliegenden Daten und der<br />
Umgang mit ihnen dar. In den folgenden Abschnitten werden die verschiedenen Datenquellen mit<br />
ihren Formaten und die jeweilige Implementierung der dazugehörigen APIs erläutert. Da der Bezug<br />
der Daten in Echtzeit sowohl technischen wie auch organisatorischen Einschränkungen unterliegt,<br />
wird anschließend das Caching der Daten thematisiert. Eine der wesentlichen Herausforderungen in<br />
der Entwicklung des BS stellt die Asynchronität im Sinne einer permanenten Nebenläufigkeit von<br />
Daten- und Programmflüssen dar. Heterogene Daten werden in Abhängigkeit zu ihrer Form und<br />
Existenz in Caching-Mechanismen gelagert oder in Echtzeit von mehreren Quellen bezogen. Dabei<br />
reichern sie sukzessive das Interface mit Inhalten an. Dieser Vorgang darf wiederum nicht zu einer<br />
Störung in der Benutzung und Darstellung führen. Das wird im letzten Abschnitt gesondert betrachtet,<br />
da es wesentlich zum Verständnis des Anwendungsverhaltens und der Entwicklungsintention<br />
beiträgt.<br />
69