Anwendungsentwicklung für Symbian OS
Anwendungsentwicklung für Symbian OS
Anwendungsentwicklung für Symbian OS
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Model<br />
CExampleDocument<br />
+CreateAppUiL()<br />
CExampleAppView<br />
+Draw()<br />
View<br />
Controller<br />
CExampleAppUi<br />
+HandleCommandL()<br />
CExampleApplication<br />
+AppDlluid()<br />
+CreateDocumentL()<br />
erzeugt<br />
Abbildung 3: Model-View-Controller<br />
Klassen und bieten eine User-Interface-Klassenbilbliothek für Standard-GUI-<br />
Komponenten (Vergleiche [Symb<strong>OS</strong>, Seite 110]).<br />
Das Application Famework, das graphische Anwendungen unter <strong>Symbian</strong><br />
<strong>OS</strong> ermöglicht, wendet das klassische Model-View-Controller-Paradigma 29<br />
an. Ein Programm mit graphischer Oberfläche besteht aus mindestens vier<br />
Klassen. Neben den Klassen für die Daten (Model), die Darstellung (View)<br />
und die Datenverarbeitung (Controller) gibt es eine weitere Applikationsklasse,<br />
die für das Starten der Anwendung verantwortlich ist.<br />
Beim Starten der Anwendung wird zunächst vom Framework eine Instanz<br />
der Klasse CExampleApplication erstellt. Danach wird die UID 30<br />
der Anwendung ausgelesen und geprüft, ob das Programm bereits läuft.<br />
Ist dies der Fall wird zu der laufenden Instanz gewechselt. Auf diese Weise<br />
wird verhindert, dass mehrere Instanzen eines Programms gestartet werden.<br />
Läuft eine Anwendung noch nicht, wird anschließend die Model-Klasse<br />
CExampleDocument instanziiert. Dabei werden persistent gespeicherte Daten<br />
geladen, falls solche vorhanden sind. Ist das Laden der Daten abgeschlossen,<br />
wird vom Model aus eine Instanz der Klasse CExampleAppUi erstellt. Dabei<br />
handelt es sich um die Controller-Klasse, über die die Daten des Modells manipuliert<br />
werden können. Abschließend instanziiert die Controller-Klasse die<br />
View-Klasse CExampleAppView. Diese ist für die Darstellung der Anwendung<br />
auf dem Display zuständig. Sie ist für das Zeichnen der Oberflächenkomponenten<br />
verantwortlich.<br />
4.5 Der Buildprozess<br />
Um ein Projekt zu erstellen, werden zunächst Makefiles benötigt, die den<br />
Kompilierprozess steuern. Zum Erstellen der genannten Makefiles wird zu-<br />
29 Architekturmuster zur Trennung von Software-Systemen<br />
30 Unique Identifier<br />
14