gBoard



über gBoard

gBoard ist ein Bulletin Board System, das in PHP5 geschrieben ist. Ich hätte es gerne in Java entwickelt, aber leider wird Java von den wenigsten Hostern unterstützt, wohingegen man überall PHP-Unterstützung bekommen kann. Also hab ich versucht so viel wie möglich aus der Java-Welt zu übertragen. Das betrifft vor allem die Java Code Conventions (woraus auch folgt: eine Datei pro Klasse, die den Namen der Klasse hat).

Außerdem ist der Code sogut wie vollständig Object Orientiert, wobei konsequent auf das MVC-Pattern gesetzt wurde. Es wurde ferner Wert darauf gelegt, die Software möglichst sicher zu machen. Das umfasst die Tatsache, das alle Variablen initialisiert werden. Auf sämtliche Daten die per POST, GET oder COOKIE übergeben werden, wird ausschließlich über eine Wrapperklasse zugegriffen - niemals direkt. Datenbank-abfragen werden nur mit PreparedStatements durchgeführt, wobei der Datenbankzugriff in DAOs, mit einfacher CRUD-funktionalität, gekapselt wird.

Es wird zudem reichlich gebrauch von den Verbesserungen gemacht, die PHP5 mit bringt. D.h. das Board ist nicht rückwärts-kompatibel zu PHP4! So werden unter anderem die "magic-methods" benutzt, und die enormen Verbesserungen im Hinblick auf OOP sind quasi essentiell - z.B. die Kapselung (private, public, protected) die in PHP4 quasi nicht existent war. Auch die mit PHP5 endlich eingeführten Interfaces werden konsequent eingesetzt.

Verwöhnt von SpringFramework für Java, hab ich zudem ein eigenes kleines Framework geschrieben, das IoC/DI ermöglicht, wobei man ebenfalls wie in Spring die Beans in einer XML-Datei konfigurieren kann - dabei kamen mir vor allem die "magic-methods" von PHP5 entgegen, die die Sache enorm vereinfacht haben.
Als Templatesystem kommt Smarty zum Einsatz. Eine Wrapperklasse "ModelAndView" ermöglicht einen ähnlichen Stil wie mit Spring.

Features

Technik


Funktionen


Lizenz

Das Programm unterliegt den Bestimmungen der GNU General Public License (GPL) Version 2 oder wahlweise auch jede höhere Version!

download

SourceForge.net Logo
Dieses Projekt ist bei SourceForge gehostet!

Zur Projekt-Seite

Im Moment kann die Software nur per CVS bezogen werden.

Status

Das Board ist derzeit zu etwa 40% fertig. Der Großteil der Funktionalitäten im Frontend ist soweit fertig (bis auf ein paar Kleinigkeiten), aber das AdminSystem fehlt noch vollständig.
Es sind aber dennoch alle herzlich eingeladen sich den Code aus dem CVS zu laden und diesen nach Fehlern zu durchsuchen, oder auch mal das Board installieren und ausprobieren, was bereits geht, wo es Probleme gibt und was man verbessern könnte/sollte.

Screenshots

Derzeit keine Screenshots.