Hallo PHP-Freunde!
Mein CMS, das ich ausschließlich privat benutze, soll überarbeitet werden! Es ist schon einige Jahre alt, schlecht designed und braucht eine Generalüberholung.
Bisheriger Aufbau:
Probleme, die dabei auftreten
Problem #1:
Die /root/index.php bindet alle Klassen aus dem /root/classes/ ein, sodass die im Contentbereich includeten Dateien davon Gebrauch machen können.
Da ich teilweise AJAX* benutze, klappt das nicht so ganz, denn jede Datei, die durch AJAX aktualisiert werden soll, muss eigenständig und unabhängig aufrufbar sein.
Ich müsste also zig Dateien includen und Objekte neu erstellen.
Problem 2:
Die Ordnerstruktur ist zwar übersichtlich, aber nicht wirklich gut handzuhaben. Wenn ich jetzt, wie bei #1 beschrieben, in den Templates eine unabhängige Datei erstellen möchte, muss ich erst zig Ordner zurück, sprich: include("../../../../../../...") etc.
Problem 3:
Die Module sind momentan nicht komplett unabhängig, da jedes Modul einen Ordner in /root/admin/modules und /root/modules/ benötigt. Außerdem wird die ModulName.class.php in den /root/classes/ Ordner geschoben.
[list=a][*]Wie würdet ihr das Problem mit den absoluten Pfaden und AJAX lösen?[*]Würdet ihr die System-Klassen in den /classes/ Ordner und modulspezifische in die jeweiligen /modules/ Ordner packen?[/list=a]
Die neue Version soll folgende Eigenschaften besitzen:
- gutes Softwaredesign (MVC & OOP)
- Templates
- Mehrsprachig
- Caching
- Modular erweiterbar
Für Designpatterns in PHP überlege ich mir ein Buch zu holen. Kennt zufällig jemand ein gutes online Tutorial?
Bitte kommt jetzt nicht mit "Web 2.0 gibt's garnicht, das ist nur ein Modebegriff" oder "AJAX gibts schon ewig!". Will doch auch nur mit der Zeit gehen.
Ich hoffe ihr könnt mir ein paar Tipps geben, die eventuell meine Probleme und Fragen lösen können.
Liebe Grüße
carapau
Mein CMS, das ich ausschließlich privat benutze, soll überarbeitet werden! Es ist schon einige Jahre alt, schlecht designed und braucht eine Generalüberholung.
Bisheriger Aufbau:
Code:
- root + admin + install + modules + MODUL1 + ... - index.php + classes - MySQL.class.php - ... + files + lang + lib + scriptaculous + tinyMCE + main.lib.js + main.lib.php + modules + MODUL1 + ... + templates + default + tolles_template - ... - .htaccess - config.php - index.php
Problem #1:
Die /root/index.php bindet alle Klassen aus dem /root/classes/ ein, sodass die im Contentbereich includeten Dateien davon Gebrauch machen können.
Da ich teilweise AJAX* benutze, klappt das nicht so ganz, denn jede Datei, die durch AJAX aktualisiert werden soll, muss eigenständig und unabhängig aufrufbar sein.
Ich müsste also zig Dateien includen und Objekte neu erstellen.
Problem 2:
Die Ordnerstruktur ist zwar übersichtlich, aber nicht wirklich gut handzuhaben. Wenn ich jetzt, wie bei #1 beschrieben, in den Templates eine unabhängige Datei erstellen möchte, muss ich erst zig Ordner zurück, sprich: include("../../../../../../...") etc.
Problem 3:
Die Module sind momentan nicht komplett unabhängig, da jedes Modul einen Ordner in /root/admin/modules und /root/modules/ benötigt. Außerdem wird die ModulName.class.php in den /root/classes/ Ordner geschoben.
[list=a][*]Wie würdet ihr das Problem mit den absoluten Pfaden und AJAX lösen?[*]Würdet ihr die System-Klassen in den /classes/ Ordner und modulspezifische in die jeweiligen /modules/ Ordner packen?[/list=a]
Die neue Version soll folgende Eigenschaften besitzen:
- gutes Softwaredesign (MVC & OOP)
- Templates
- Mehrsprachig
- Caching
- Modular erweiterbar
Für Designpatterns in PHP überlege ich mir ein Buch zu holen. Kennt zufällig jemand ein gutes online Tutorial?
Bitte kommt jetzt nicht mit "Web 2.0 gibt's garnicht, das ist nur ein Modebegriff" oder "AJAX gibts schon ewig!". Will doch auch nur mit der Zeit gehen.
Ich hoffe ihr könnt mir ein paar Tipps geben, die eventuell meine Probleme und Fragen lösen können.
Liebe Grüße
carapau
Kommentar