06.10.2013 Aufrufe

pdf 1.967 kB - Praktische Informatik - Universität Siegen

pdf 1.967 kB - Praktische Informatik - Universität Siegen

pdf 1.967 kB - Praktische Informatik - Universität Siegen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

6 Erweiterungsmöglichkeiten<br />

Das System verfügt über eine modulare Architektur, welche es erlaubt, neue Funktionalität<br />

ohne größeren Aufwand in das Programm zu integrieren. Im diesem Kapitel sollen<br />

zunächst die Schritte beschrieben werden, die zur Erstellung der funktionserweiternden<br />

Plugins benötigt werden. Anschließend wird der Vorgang der Integration neuer Sprachmodule<br />

detailliert vorgestellt.<br />

6.1 Erstellung und Integration eines Plugins<br />

Die einfachste Methode ein neues Plugin für die “CAEW“ zu Entwickeln, ist, dieses<br />

mit dem Entwicklungstool ’Eclipse“ zu erstellen. Hierfür muss zunächst der bei der Installation<br />

des Programms erstellte Ordner als Workspace von Eclipse definiert werden.<br />

Bei der Erstellung eines neuen Projektes für die Entwicklung des Plugins muss das<br />

“CAEW“-Projekt zum Klassenpfad hinzugefügt werden. Die Entwicklung von Plugins<br />

ohne den Einsatz von “Eclipse“ ist ebenfalls möglich, hierbei muss darauf geachtet werden,<br />

dass das Verzeichnis “bin“, das ein direkter Unterordner des Installationsordners ist,<br />

zum Klassenpfad des eingesetzten Entwicklungwerkzeugs hinzugefügt wird. Im Folgenden<br />

wird als Beispiel ein Plugin erstellt, welches keine relevante Funktion für das System<br />

mitbringt, es fügt lediglich die Worte “PLUGIN ERFOLGREICH HINZUGEFÜGT“ in<br />

die beiden Ansichtsfenster und in die Nachrichtenausgabe ein. Zudem ergänzt es das<br />

Hauptmenü des Systems um den Eintrag “NEUER MENÜPUNKT“. Bei der Entwicklung<br />

dieses Plugins wird auf die Strukturierung in ein Schichtenmodell verzichtet, es wird<br />

lediglich eine Klasse implementiert,die alle benötigten Methoden bereitstellt. Hierdurch<br />

soll der Aufwand der Erstellung des Beispielplugins so gering wie möglich gehalten werden.<br />

Dieses Beispiel kann selbstverständlich als Referenz für die Entwicklung weiterer<br />

Plugins verwendet werden.<br />

Zunächst müssen die oben beschriebenen Vorkehrungen getroffen werden.<br />

Anschließend wird die Klasse “MyPlugin“ erstellt. Diese muss als Hauptklasse des Pluins<br />

die Schnittstelle "de.usi.caew.system.Plugin" des “CAEW“-Projektes implementieren.<br />

Die Schnittstelle beschreibt die zwei Methoden<br />

"setMainSys(de.usi.caew.system.MainSys mainSys)" und<br />

"setMainFrame(de.usi.caew.gui.MFrame mainFrame)", die ebenfalls von der Klasse<br />

Implementiert werden müssen. Mit der Implementierung dieser Methoden beschafft man<br />

die Referenzen auf die Klassen "MainSys" und "MFrame" des “CAEW“-Hauptsystems.<br />

Zudem beherbergt die erstgenannte Methode den Aufruf der zunächst leeren Initialisierungsmethode<br />

start(). Das Listing des Quellcodes der bis hierhin erstellten Klasse<br />

sieht wie folgt aus:<br />

70

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!