| | | | |
| |||||||
| Off-Topic Diskussionen Mach mal Pause vom Programmieren! |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Erfahrener Benutzer Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() | Hmm, interessiert das hier denn jetzt noch jemanden? Ich habe tatsächlich etwas zusammenbekommen, wie gesagt vor allem als Übung für die Symfony Components, werde das auch unabhängig von dem "Quiz" noch etwas weiter bearbeiten. Ziel war ein schlankes, leicht integrierbares und vor allem erweiterbares Gästebuch. Es wird kein Framework benutzt, allerdings auf folgede Komponenten zurückgegriffen: - Symfony: sfServiceContainer für Dependency Injection - Symfony: sfEvent für Plugins - Symfony: sfYaml für Konfiguration - eigene: OutputFilter zum Filtern von Daten im View - eigene: DecorateAnything als generischer Dekorator für Plugins - eigene: TypeSafeEnum als Enum-Datentyp Die gesamte Lösung gibt es hier (Plugins und Installationsroutine sind noch nicht implementiert, dies sprengt aber auch den Rahmen der Aufgabe): SlimGb at master from schmengler's SlimGb - GitHub Ein Beispiel zur Einbindung (voll funktionsfähig): PHP-Code: Sourcecode: SlimGb/conf/SlimGb.yaml Service-Konfiguration (hier wird die Datenquelle bestimmt, siehe imports-Abschnitt) Sourcecode: SlimGb/conf/Services.yaml Datenquellen-Konfiguration: Sourcecode: SlimGb/datasources/pdo.yaml.php Sourcecode: SlimGb/datasources/csv.yaml.php Als Standard ist CSV eingestellt, dafür gibt es erstmal nichts zu konfigurieren, auch eine Datei ist schon angelegt, so ist keine weitere Installation nötig, lediglich das runtime-Verzeichnis muss von PHP beschrieben werden dürfen. Edit: Ach ja, zum zentralen Punkt, den Datenquellen: - Sourcecode, Interface: SlimGb/core/SlimGb/Service/DataSource.php - Sourcecode, Implementierung für CSV: SlimGb/core/SlimGb/Service/DataSourceCSV.php - Sourcecode, Implementierung für PDO: SlimGb/core/SlimGb/Service/DataSourcePDO.php Hier ist übrigens einmal eine Demo-Installation: https://demo.linuxkind.de/slimgb/ Hier ein Klassendiagramm der wesentlichen Klassen: Farben: hellgelb: keine bes. Bedeutung dunkelgelb: entscheidende Klassen für die Datenhaltung dunkelgrau: Anwendung (Fassade) hellgrau: Konfiguration (DI Container etc.) weiß: nur relevant für Plugins ![]() Uploaded with ImageShack.us Geändert von fab (04.09.2010 um 20:01 Uhr). |
| | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Moderator und Wett-König | @fab: beim ersten Post erhalte ich ein "Session is invalid". Erwartet hätte ich "please provide your name and a message".
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | |
| | |
| Moderator und Wett-König | Cookies sind bei mir by default aktiviert.
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | |
| | ||
| Erfahrener Benutzer Registriert seit: 23.03.2010
Beiträge: 626
PHP-Kenntnisse: Anfänger ![]() | Zitat:
__________________ Signatur: PHP-Code: | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() | So, ich habe den Post oben mal etwas aufgeräumt und vor allem ein Klassendiagramm angehängt, würde mich auch über generelles Feedback zum Design freuen. Die oben genannten Probleme mit der Demo-Installation sind übrigens mittlerweile behoben, es war natürlich eine zu spät initialisierte Session schuld. Das (offensichtlich |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| klassendiagramm plugin, quiz in php source code, containerverkehr bedeutung, csrf token: erforderlich symfony, slimgb pagination |