LugFramework - Ein Framework zur Erstellung von Swing-Applikationen

LugFramework

Erstellung von Dokumentation

Die wichtigste Dokumentation ist die Javadoc API-Dokumentation, die ihr auch rechts im Menü seht. Soweit es möglich ist, sollten alle Klassen und Methoden dort ausführlich dokumentiert werden, da so am ehesten gewährleistet ist, das man bei Änderungen am Quelltext auch die Doku mitändert.

Davon unabhängig gibt es ein Template-System, das die Webseite erstellt. In diese Seite kann man im Menü weitere Unterseiten einfügen und diese dann erstellen. Da ich dieses System gerne für verschiedene Projekte nutzen will (wir schreiben hier ein Framework, nicht wahr?), habe ich die Templates auf zwei Verzeichnisse verteilt: In doc/sitetemplate sind allgemeine Templates, die eine einfache, hübsche, aber nichtssagende Website ohne echten Content erstellen. In doc/site kann man dann einige dieser Dateien "überladen" bzw. auch noch beliebige neue hinzunehmen.

Dabei gibt es drei Formate, in denen Seiten geschrieben werden können:

Template-Engine

Die im Ant-Skript bzw. in dem von diesem eingelesenen Properties-Dateien stehenden Properties können einfach mit einem Dollar-Zeichen beuntzt werden. So heisst dieses Projekt laut der Variable $app_name "LugFramework". Wer mehr wissen will, kann in meine Beispiele schauen oder sich auf der Groovy-Seite umsehen. Auf dieser Seite habe ich die erweiterte Syntax für Includes abgeschaut.

Wiki-Engine

Die Wiki-Engine ist von mir in zwei Stunden mit Hilfe von ein paar regulären Ausdrücken geschrieben worden. Also erwartet nicht zu viel. RegExe sind zwar sehr mächtig, aber nach meiner Erfahrung keine exakte Wissenschaft. Man findet immer wieder einen Fall, der nicht richtig abgedeckt ist und muss daran herumfeilen. Wer Probleme findet, sollte mir also den entsprechenden Code als Beispiel schicken, dann kann ich nachbessern. Ein zweites Problem an der RegEx-Lösung ist, daß Sie in Java evtl. zu OutOfStackMemory-Problemen neigt. Wer sowas bekommt, sollte mir auch die entsprechende Datei schicken.

Bisher gehen Kursivdruck, Fettdruck, Überschriften, Links mit und ohne Bezeichnung, Absätze, Aufzählungen und Code-Abschnitte. Ein ganz gutes Beispiel für die Wiki-Syntax ist übrigens der Quellcode des Textes, den Ihr gerade lest.