Open Source und Java ergeben ungeahnte Möglichkeiten

Bei SourceForge sind alleine zu dem Thema „Wiki“ 87 Projekte mit der Programmiersprache Java und zu Java allgemein sogar 6781 Projekte (Stand 25.10.2012) veröffentlicht. In Verbindung mit dem genialen Entwickler-Werkzeug Eclipse ergeben sich so ganz neue, ja ungeahnte Möglichkeiten. Aktuell arbeite ich an dem Java Projekt MaiWiki das folgende Anforderungen abdeckt:

  1. Standard Datei-Funktionen (Neu, Öffnen, Speichern, Speichern unter, Export) für das Wiki. Dabei sollten alle Textdaten in einer XML-Datei gespeichert werden. Bilder oder sonstige Medien sollten über Referenzen eingebunden werden.
  2. Artikel sollen über eine Struktur (Baumansicht) organisiert werden.
  3. Integrierter Editor sollte eine Syntaxhervorhebung (siehe Eclipse) des MediaWiki Syntax (siehe Wikipedia) haben.
  4. In der Standard-Ansicht „Browser“ sollten die Artikel formatiert (wie bei Wikipedia) ausgegeben werden. Beim Klicken auf „interne“ Links sollte der zugeordnete Artikel geöffnet werden. Beim Klicken auf „externe“ Links sollte die Webseite auf dem Standard-Browser geöffnet werden.
  5. Über eine Suchfunktion sollte innerhalb des gesamten Wiki ein Begriff gesucht werden können.

Betrachtet man diese Forderungen im Detail, so erkennt man folgende Teilprojekte:

  1. Anwendung (Frame) um Daten einer Struktur bearbeiten und als XML-Datei speichern  zu können.
  2. Spezieller Editor (siehe JTextPane) Swing-Komponente um Text farbig formatiert ausgeben zu können.
  3. MediaWiki-Parser und Konverter für die formatierte Ausgaben.

Erfahrene Software-Entwickler erkennen spätestens jetzt, dass alleine die Teilprojekte für „einen Entwickler“ nur in einem großen Zeitfenster (wenn überhaupt) zu realisieren sind. Doch Dank der offenen Entwicklung vieler erfahrener Programmier ist MaiWiki kurz vor der Veröffentlichung. Lesen Sie in Kürze aus welchen „Bausteinen“ sich MaiWiki zusammensetzt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.