php.de

ZurĂŒck   php.de > Webentwicklung > Software-Design

Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.07.2010, 15:10  
Neuer Benutzer
 
Registriert seit: 02.08.2009
BeitrÀge: 28
PHP-Kenntnisse:
AnfÀnger
karthago befindet sich auf einem aufstrebenden Ast
Standard DAO-Klassen dynamisch erstellen

Hallo,

meine Frage handelt von den DAOs, wie sie z.B. mepeisen hier beschrieben hat... oder auch viele andere in diesem Forum.

Nun wurde ja schon des öfteren hier das Zusammenspiel von Managerklassen und den DAOs beschrieben. So wie ich es verstanden habe, sind es ja die Managerklassen, die als Models mit der Datenquelle kommunizieren und den den jeweiligen DAO befĂŒllen, welche widerum in Views usw. als Datenhalter zum Einsatz kommt.

Ich weiß, der Grundgedanke beim MVC ist möglichst hohe UnabhĂ€ngigkeit und Wiederverwendbarkeit der einzelnen Module; das z.B. die Datenquelle nicht immer eine Datenbank sein muss, sondern auch eine Exceltabelle sein kann. Wie wĂ€re es aber, wenn ich hier die DAOs nicht konkret definiere, sondern von der Klasse, welche die Datenquelle representiert, erben lasse. Ein Beispiel:
PHP-Code:
// UserDAO
class User extends DataSource
{
    
// keine konkret definierten Klassenvariablen
    // diese werden von der Datenbank gelesen
    // somit FlexibilitĂ€t, da ich die Datenbanktabelle User
    // beliebig erweitern kann, ohne VerĂ€nderungen in der
    // UserDAO zu notieren.
}


// Datenquelle, in diesem Falle die Datenbank
class DataSource
{
    private   
$db;
    protected 
$tabelle get_class($this);
    protected 
$variablen = array();
    
    public function 
__construct($db)
    {
        
$this->db $db;
        
$this->variablen $db->query('HOLE MIR ALLE SPALTENNAMEN VON DER TABELLE '$this->tabelle);
    }

Somit könnte die UserManager problemlos die User-Klasse befĂŒllen, damit diese die Daten bereitstellen kann, wenn Sie irgendwo im Code aufgerufen werden. Die UserDAO wĂ€re dann also lediglich eine temporĂ€rer Datenhalter.

WĂŒrde mich freuen, wenn mich jemand aufklĂ€ren könnte.
karthago ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code FlĂŒsterer

Registriert seit: 21.08.2005
BeitrÀge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.07.2010, 16:28  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
BeitrÀge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

So lange du nur mit ganz ganz simplen DatensĂ€tzen arbeitest und keine Relationen abgebildet haben möchtest funktioniert das sicherlich. Ansonsten stĂ¶ĂŸt du damit ganz schnell an die Grenzen und lĂ€ufst Gefahr, einen dirty hack nach dem anderen hinzuzufĂŒgen.

Versuche lieber, von Anfang an, Klassen fĂŒr Datenquellen und Datenhaltung zu trennen und definiere fĂŒr letztere auch klar, was fĂŒr Eigenschaften und Assoziationen bestehen. Wenn du die Programmierung trotzdem möglichst generisch haben willst, kannst du dies natĂŒrlich auch z.B. mit XML konfigurieren und in einer abstrakten Oberklasse verarbeiten.

Zitat:
So wie ich es verstanden habe, sind es ja die Managerklassen, die als Models mit der Datenquelle kommunizieren und den den jeweiligen DAO befĂŒllen
Ich glaube, du wirfst da ein paar Begriffe durcheinander. Zum besseren VerstÀndnis schau dir doch mal beispielhaft ein paar Implementierungen des Active Record Patterns an, Tutorials gibt es zuhauf im Netz, genauso wie fertige professionelle Lösungen.
fab ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf BeitrÀge zu antworten.
Es ist dir nicht erlaubt, AnhÀnge hochzuladen.
Es ist dir nicht erlaubt, deine BeitrÀge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mit PHP dynamisch Bilder erstellen Tobias Tutorials 39 21.04.2010 09:56
[Erledigt] Mehrdimensinales Array erstellen aber Dynamisch.. HellBz PHP-Fortgeschrittene 9 16.03.2010 13:37
PHP Gallery - Thumbnails dynamisch erstellen evilbrot PHP Tipps 2009 11 15.10.2009 16:20
Dynamisch Ordner erstellen und Dynamisch Bilderordner auslesen timmeyy PHP Tipps 2009 9 22.06.2009 09:13
Mehrere Klassen verknĂŒpfen BlackJack01090 Software-Design 9 26.05.2009 20:43
[Erledigt] foreach schleife beim erstellen einer image_map schlÀgt fehl litterauspirna PHP Tipps 2009 8 25.05.2009 13:04
link dynamisch erstellen dorky PHP Tipps 2009 2 09.01.2009 22:11
[Erledigt] Klassen - Dynamisch ĂŒbergebbare Methoden teQUil4ever PHP-Fortgeschrittene 4 27.10.2008 08:05
db tabellen dynamisch erstellen GELight PHP Tipps 2005-2 5 22.07.2005 14:35
Tabellen dynamisch erstellen PHP Tipps 2005 4 20.04.2005 13:20
Dynamisch Formular Felder erstellen Simon9990 PHP Tipps 2005 2 29.01.2005 22:00
Alle dynamisch erstellen Elemente verschicken HTML, Usability und Barrierefreiheit 3 23.09.2004 15:38
[Erledigt] Sitemap dynamisch erstellen PHP Tipps 2004 1 26.07.2004 17:13
Bilder dynamisch erstellen suter PHP Tipps 2004 12 13.07.2004 12:38

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
dao klassen, dao klasse, php klasse aus tabelle erzeugen, dao klasse beispiel, daos, php aus tabelle datensĂ€tzen klasse erstellen, dao klassen einfach erklĂ€rt, php dao beispiel, dynamisches erstellen einer dao datenbank, php klassen dynamisch erzeugen, php klasse dynamisch erzeugen, php dao, dao klasse php, php class dao, datenhalter klasse, dao-klassen, dao klassen fĂŒr hat tabellen, klassenname dao, dao.php, dao erstellen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:40 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum