[linux-l] Bash_Script von Browser. Hilfe!

Peter Ross Peter.Ross at bogen.in-berlin.de
Fr Apr 5 10:09:43 CEST 2013


Hi Olaf,

On Thu, 4 Apr 2013, Olaf Radicke wrote:

> Ich denke wir reden hier gerade von Object-relational mapping (ORM) - oder?
> Doctrine kann man mit und ohne ORM in Symfony verwenden. Ich sprach
> mit einem gestandenen PHP-Programmierer, der bei einem anerkannten
> PHP-Spezialisten arbeitet. Dieser sagte, das sie in aller Regel Doctrine
> ohne ORM-Layer verwenden, da die Performance sonst stark leidet.
> Was nicht weiter verwunderlich ist. Muss doch erheblicher Parsing-
> und Casting-Aufwand getrieben werden. Das könnte man sich in C++
> vielleicht noch erlauben, aber in einer Script-Sprache mit schwacher
> Typisierung... Aber für Prototyping mag es noch reichen.

Die erzeugten Klassen können jederzeit verbessert werden.

Du siehst, was da getan wird, was in der Datenbank ankommt, und wenn es 
Dir nicht gefällt, überschreibst Du die DB-Anfragen, in Forms z.B. in 
doBuildQuery.

Aber 90% der Abfragen sind "gut genug".

Das Parsing ist nicht der Knackpunkt, die Datenbank ist.

> Oft ist es aber so, das man beim Aussehen der form bestimmte
> Vorstellungen hat, und das die Eingabeprüfung mit der Programm-
> Logik zusammenhängen, die dazu führen, das man dann doch wieder
> kein form "von der Stange" generieren kann.

Hier gilt das Gleiche. Symfony generiert Forms, die Du jederzeit 
verbessern kannst. Z.B. die Templates überschreiben.

Aber auch hier gilt, daß 90% der Aufgabe schon "erledigt" sind, bevor Du 
überhaupt anfängst zu programmieren.

> Also z.B. eine Klasse "Bücherregal" mit der ich einzelne oder
> selektierte Datensätze als Klasse "Buch" herausziehe. Objekte
> der Klasse haben dann schon die Daten Titel, Erscheinung, ISBN.
> Daten die in anderen Tabellen stehen, z.B. Autor und Schlagworte,
> ziehe ich erst aus der Datenbank, wenn eine Get-Anfrage auf das
> Objekt "Buch" kommt. Das Objekt Buch ruft dann z.B. eine
> Klasse "AutorenVerzeichnis" auf um sich ein Objekt "Autor"
> zurückgeben zu lassen.
>
> Wenn es die Programmlogik erfordert, kann ich die Klasse
> "Bücherregal" durch eine Methode erweitern, die mir Bücher-Objekte
> generiert, deren Autoren-Daten schon ohne nachladen enthalten
> sind um alle Daten mit einem Selct zu ziehen und die DB
> zu schonen.

Das passiert natürlich ähnlich auf Doctrine-Ebene.

Ich will jetzt nicht weiter Symfony "verteitigen", aber in gegebenen 
Punkten kann ich Deine Kritik eher nicht nachvollziehen.

Es grüßt
Peter



Mehr Informationen über die Mailingliste linux-l