Du bist nicht angemeldet.

psycho

Fortgeschrittener

  • »psycho« ist der Autor dieses Themas

Beiträge: 413

Registrierungsdatum: 26.06.2011

Danksagungen: 80

  • Private Nachricht senden

1

22.04.2013, 16:33

[ORM] Propel und Doctrine

Hat jemand Erfahrung mit den genannten ORMs bzw. kann Propel oder Doctrine empfehlen? :)

Bin nämlich gerade auf der Suche nach einem guten ORM-Mapper.
Computer sind dazu da, uns die Arbeit zu
erleichtern, die wir ohne sie gar nicht hätten.

fukar

Schüler

Beiträge: 109

Registrierungsdatum: 18.08.2012

Wohnort: Berlin

Beruf: freak

Danksagungen: 21

  • Private Nachricht senden

2

29.04.2016, 12:52

Mich interessiert aktuell die Frage, welche Vorteile überwiegen die Nachteile vor allem bei Doctrine und Propel.
Ich meine, mit PDO und ´ner guten abstrakten Klasse habe ich doch alles was ich brauche. Ich seh bisher nicht, was diesen ganzen Overhead gerechtfertigt. Jemand n Plan ?(
.:alwayz hardcore:.

Johannes S.

Fortgeschrittener

Beiträge: 444

Registrierungsdatum: 24.06.2011

Wohnort: Lychen

Danksagungen: 71

  • Private Nachricht senden

3

01.05.2016, 19:19

Ich meine, mit PDO und ´ner guten abstrakten Klasse habe ich doch alles was ich brauche. Ich seh bisher nicht, was diesen ganzen Overhead gerechtfertigt.

Ich habe lange kein PHP mehr verwendet und die entsprechenden ORM's habe ich alle kaum benutzt. Ich denke ein wesentlicher Grund für die Verwendung ist, dass sie es erlauben auf Daten zuzugreifen ohne SQL schreiben zu müssen. Somit entfällt das "mischen" von PHP und SQL-Code. Sicher kann man auch manuell entsprechende Klassen erstellen, aber um mit dieser Lösung ähnlich Komplexe Statements ausdrücken zu können, benötigt man vermutlich recht viel Code pro Klasse. Ich könnte mir auch vorstellen, dass ORMs bestimmte Abfragen implizit optimieren indem sie JOIN's nutzen und damit die Anzahl der Abfragen reduzieren. Inwieweit sowas aber wirklich gemacht wird und wie gut das funktioniert weiß ich nicht.

Django (ein Webframework für Python) bietet die Möglichkeit an, aus den Definitionen im Python-Model das Datenbank-Schema zu erstellen und bei Änderungen auch upzudaten. So nimmt das System hier auch die Redundanz bei der Entwicklung. Ich weiß nicht wie es bei den genannten ORM's ist, aber ich könnte mir vorstellen, dass die was ähnliches machen können.

Zu guter Letzt kann ein solches ORM eine Abstraktionsebene für die verwendete Datenbank darstellen. Somit können sie es ggf. vereinfachen zwischendurch das Datenbanksystem zu wechseln.

Ich denke in manchen einfachen Anwendungen können sie durchaus einfach nur Overhead sein. Aber ich denke in manchen Szenarien können ORM's einem das Leben deutlich vereinfachen.
Signatur ?

JuKu

Profi

Beiträge: 574

Registrierungsdatum: 29.09.2011

Danksagungen: 48

  • Private Nachricht senden

4

11.05.2016, 17:11

Ich denke gerade automatische Updates, indem du neue Felder hinzufügst, werden damit um ein Vielfaches einfacher.
Und wie schon erwähnt, bräuchte man keine SQL Queries mehr zu schreiben - dafür geht aber eben dann auch eine Menge Performance drauf, weshalb gar nicht so viele Projekte solche Frameworks oder Libraries nutzen.
Wenn euch mein Beitrag weitergeholfen hat, drückt auf "Bedanken"!
Danke! :D

Alex

Fortgeschrittener

Beiträge: 372

Registrierungsdatum: 23.06.2011

Wohnort: /home/alex

Danksagungen: 117

  • Private Nachricht senden

5

13.05.2016, 17:18

Einer der Vorteile daran, dass SQL-Abfragen entfallen, ist dass eine wesentliche Fehlerquelle wegfällt. Gerade, wenn man ein großes Business-Layer mit vielen verschiedenartigen Objekten hat, die auch noch alle bunt aufeinander verweisen, überwiegen hier irgendwann die Vorteile gegenüber selbstgebastelten SQL-Queries wirklich enorm. Insbesondere kann dir ein gutes ORM auch vendor-spezifische SQL-Abfragen schreiben, wenn du z.B. beschließt auf einmal eine Oracle-DB zu nutzen hast du hier evtl durch ein ORM eine performantere Abfrage, als wenn du nur vollkommen standardkompatibles SQL benutzt, um dir die Möglichkeit zum Wechsel offen zu halten.
alexthinking.com - yet another computer weblog

Zitat

Chuck Norris knows the state of schroedinger's cat.