Subject: Modularer Aufbau
Hallo!
Ich möchte hier auch mal ein paar Gedanken & Überlegungen loswerden
.
Eins der Hauptprobleme bei vielen Skripten im Bereich Wikis, Foren, CMS, etc. sehe ich vor allem darin, dass sie nicht wirklich modular aufgebaut sind. Das erschwert eigentlich immer die Integration in bereits vorhandene Anwendungen, sowie mögliche Anpassungen an eigene Erfordernisse und Wünsche.
Was ich meine ist, dass man bspw. das Foren-Skript in möglichst viele kleine Module "zerlegen" sollte.
Jedes dieser Module müsste über verschiedene Meta-Daten verfügen, die z.B. Auskunft darüber geben
Ich möchte das mal anhand eines abstrakten Beispiels verdeutlichen:
Angenommen wir haben eine Kiste mit farbigen Bauklötzen. Aus diesen wollen wir nun einen Turm bauen. Unser Turm muss aus mind. 5 Klötzen bestehen. Nehmen wir mal an, das seien 1 x Rot, 1 x Grün, 1 x Blau, 1 x Gelb und 1 x Schwarz. Diese stellen also quasi die "Default Core-Moduls" dar, die vorhanden sein müssen.
Optional könnten wir jetzt aber auch noch beliebig viele andere Klötze mit einfügen.
Wenn mir jetzt aber bspw. das "Verhalten" des roten Default-Klotzes nicht gefällt, dann könnte ich ihn auch durch einen anderen Klotz ersetzen.
Die jeweilige Konfiguration der einzelnen Module könnte man zentral in einer Konfigurations-Seite verwalten und administrieren.
Für die benötigten Variablen, bzw. die entsprechenden Rückgabewerte des jeweiligen Moduls müsste man die Module zusätzlich noch mit einer Art "Übersetzer/ Translator" versehen, der die verschiedenen Variablen (aus den verschiedenen anderen Anwendungen) quasi "angleicht" - also hin und zurück jeweils so umwandelt, dass die jeweilige Anwendung oder ein anderes Modul diese versteht.
Was könnten/ sollten mögliche Module sein?
Nun, die Authentifizierung wäre bspw. ein separates Modul. Oder der BBCode-Parser, oder die Suche, das Tagging-System, u.v.m.
Nur wenn es gelingt, ein trotz der Aufteilung auf viele kleine Module, noch sehr effizient arbeitendes Skript zu programmieren, hat man hinterher eine in allen Bereichen sehr anpassungsfähige Anwendung.
Nur so ein Gedanke ... .
Gruß
Gunther
Ich möchte hier auch mal ein paar Gedanken & Überlegungen loswerden
.Eins der Hauptprobleme bei vielen Skripten im Bereich Wikis, Foren, CMS, etc. sehe ich vor allem darin, dass sie nicht wirklich modular aufgebaut sind. Das erschwert eigentlich immer die Integration in bereits vorhandene Anwendungen, sowie mögliche Anpassungen an eigene Erfordernisse und Wünsche.
Was ich meine ist, dass man bspw. das Foren-Skript in möglichst viele kleine Module "zerlegen" sollte.
Jedes dieser Module müsste über verschiedene Meta-Daten verfügen, die z.B. Auskunft darüber geben
- welche Abhängigkeiten es zu anderen Modulen gibt
- welche Variablen zwingend erwartet und zurückgegeben werden, und welche optional
- ob es sich um ein "Core-Modul" handelt, oder ob es optional ist
Ich möchte das mal anhand eines abstrakten Beispiels verdeutlichen:
Angenommen wir haben eine Kiste mit farbigen Bauklötzen. Aus diesen wollen wir nun einen Turm bauen. Unser Turm muss aus mind. 5 Klötzen bestehen. Nehmen wir mal an, das seien 1 x Rot, 1 x Grün, 1 x Blau, 1 x Gelb und 1 x Schwarz. Diese stellen also quasi die "Default Core-Moduls" dar, die vorhanden sein müssen.
Optional könnten wir jetzt aber auch noch beliebig viele andere Klötze mit einfügen.
Wenn mir jetzt aber bspw. das "Verhalten" des roten Default-Klotzes nicht gefällt, dann könnte ich ihn auch durch einen anderen Klotz ersetzen.
Die jeweilige Konfiguration der einzelnen Module könnte man zentral in einer Konfigurations-Seite verwalten und administrieren.
Für die benötigten Variablen, bzw. die entsprechenden Rückgabewerte des jeweiligen Moduls müsste man die Module zusätzlich noch mit einer Art "Übersetzer/ Translator" versehen, der die verschiedenen Variablen (aus den verschiedenen anderen Anwendungen) quasi "angleicht" - also hin und zurück jeweils so umwandelt, dass die jeweilige Anwendung oder ein anderes Modul diese versteht.
Was könnten/ sollten mögliche Module sein?
Nun, die Authentifizierung wäre bspw. ein separates Modul. Oder der BBCode-Parser, oder die Suche, das Tagging-System, u.v.m.
Nur wenn es gelingt, ein trotz der Aufteilung auf viele kleine Module, noch sehr effizient arbeitendes Skript zu programmieren, hat man hinterher eine in allen Bereichen sehr anpassungsfähige Anwendung.
Nur so ein Gedanke ... .
Gruß
Gunther

Netsurfer
Show profile
Link to this post
.
.