Hauptmenü öffnen

Memory Alpha Nova β

Änderungen

Benutzer:Florian K/Jaybot

2.503 Bytes hinzugefügt, 15:49, 20. Jul. 2005
Jaybot, frühe Planung
Diese Seite dient zeitweilig als Start für einen neuen Bot, der pywikipedia ersetzen oder ergänzen soll. Name des Bot soll "'''Jaybot'''" sein, Programmiersprache ist Java (1.5). Es befindet sich noch in der frühen Planungsphase.

:''Jeder ist aufgerufen, diese Liste zu erweitern und zu verändern''
:''PS: Java-Script != Java :o)''

== Anforderungen / Features ==
* Modularer Aufbau / Erweiterbarkeit durch eigene Programme
* Offene Schnittstelle zur MediaWiki-Software, sodass verschiedenste Sprachen, Versionen und Wikis unterstützt werden
** Beispiele: alte MediaWikisoftware; russische, deutsche, englische Sprachversionen; lauffähig auf Wikipedia, MemoryAlpha und anderen
* einstellbare Serverbelastung
* nicht nur per Kommandozeile sondern auch per GUI bedienbar
* Unterstützung von (gepackten) Datenbank-Dumps
* Unterstützung von XML-Eingabe (und -Ausgabe)

== Standardfunktionen ==
* Suchen / Ersetzen
** Reguläre Suchausdrücke
** HTML-Format zu Wiki-Markup
* Kategorisierung
* Prüfen externer Links
* Prüfen auf Coyprightverletzung
* Interwiki-Verlinkung

== Geplantes Design ==
<div class="floatright"><graph>
digraph "JAYBOT" {
"GUI" -> "Plugin"
"Plugin" -> "Core"
"Core" -> "Input-Plugin"
}
</graph></div>
* GUI
** Die grafische Benutzeroberfläche dockt mit standardisierten Schnittstellen der Plugins an und kann sie so bedienen
** Über die Schnittstellen ist bekannt, welche Parameter benötigt werden und wie sie darzustellen sind
* Funktion / Plugin
** Hier wird die logische Verarbeitung durchgeführt, also der Text ersetzt / verarbeitet
* Core
** Enthält die nötigen Schnittstellen zum Austausch mit MediaWiki
** Stellt Basismethoden zur Verfügung wie "Laden" oder "Speichern" eines Artikels
* Input-Plugins
** Eventuell zur Import von XML-Strömen oder SQL-Dumps - vielleicht besser im Core aufgehoben

== Konventionen ==
* Offene Architektur der Schnittstellen zwischen den Komponenten, sodass weitere Funktionen / GUIs / Inputs von anderen erstellt werden können
* Verwendung von JavaDoc zur Dokumentation

== Projektplan ==
# Erstellung des Core-Gerüsts
# Definition der Schnittstelle zu den Plugins
# erste Funktionen
# Verfeinerung der Schnittstelle
# Verfeinerung des Core
# Umsetzung der gebrächlichsten Funktionen
# Dokumentation und How-To
# Erstellen eines GUI, basierend auf Applets
# Möglicherweise serverseitiges GUI zur Bedienung per WWW
# Erreichen der Zielsetzung von Agenda 2010
# Bei stabilem Release möglicherweise Freikassung ins OpenSource
Anonymer Benutzer