Ankündigung

Einklappen
Keine Ankündigung bisher.

Literatur zur Entwicklung von Enterprise Projekten gesucht

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Nadir
    hat ein Thema erstellt Literatur zur Entwicklung von Enterprise Projekten gesucht.

    Literatur zur Entwicklung von Enterprise Projekten gesucht

    Ich habe langjährige Erfahrung in der Programmierung (objektorientiert) und der Entwicklung von PHP oder Datenbank gestützten Projekten.

    Mir sind auch verschiedene Frameworks und Template Systeme bekannt.

    Trotzdem ist mir nicht klar wie man eigentlich an ein Enterprise Projekt heran geht.

    Ich will nicht größenwahnsinnig erscheinen, aber bei der Bezeichnung Enterprise Projekt denke ich an Internet Plattformen wie eBay oder Amazon.

    Ober vielleicht etwas kleiner - die neue Plattform hammerdeal.de . Sie ist ein gutes Beispiel.

    Ruft man Bidster auf, dann stellt man sehr schnell fest, das es diese Seite auch in anderen Ländern gibt mit entsprechenden kleinen Nuancen. Nicht nur die Texte wurden übersetzt und trotzdem wage ich zu behaupten, daß eine gemeinsame Code Basis dahinter liegt.

    Wie geht man ein solches Projekt an?

    Es gibt sicher tausende von Büchern mit der 'Hello World' Applikation und dem ersten Datenbankzugriff, aber ich kann nichts zu diesem Thema finden.
    Kennt jemand von Euch entsprechende Literatur?

    Nadir

  • dr.e.
    antwortet
    Zitat von night Beitrag anzeigen
    Vielleicht solltest du mir ein gewisses Maß an Logik zugestehen. Ich meinte damit nicht, dass die Ausführungszeit geringer wird, sondern der Vergleich zu den anderen Frameworks anders ausfallen könnte. Also der prozentuale Unterschied geringer werden könnte.
    Sorry, wenn du das falsch verstanden hast. Mir ist durchaus bewusst, dass es durch die Änderung/Erweiterung der Funktionen Verschiebungen geben kann und in einigen Fällen auch wird. Grundsätzlich ist die Verschiebung jedoch durch das Design des Frameworks beschrieben. Dabei muss man jedoch fairerweise auch sagen, dass man die Performance jedes Frameworks mit schlechtem Software-Design kaputt machen kann.

    Nochmal zurück zur Performance: Da mir der Unterschied auch zu drastisch vorkam, habe ich das näher untersucht und festgestellt, dass eine Hauptursache die exzessive Verwendung von include()/require() über den PHP-Include-Path darstellt. Diese Funktionen sind in PHP einfach nicht gut implementiert und man kann sich mit ein paar Tricks bis zu 30% mehr Performance rausholen.

    Einen Kommentar schreiben:


  • night
    antwortet
    Zitat von dr.e.-new Beitrag anzeigen
    Sind wir doch mal ehrlich: komplexer Anwendungen sind immer langsamer als einfache.
    Vielleicht solltest du mir ein gewisses Maß an Logik zugestehen. Ich meinte damit nicht, dass die Ausführungszeit geringer wird, sondern der Vergleich zu den anderen Frameworks anders ausfallen könnte. Also der prozentuale Unterschied geringer werden könnte.

    Einen Kommentar schreiben:


  • dr.e.
    antwortet
    Hallo night,

    da könnten wir jetzt an der ein oder anderen Stelle weiter diskutieren, denn Zend_Layout löst nicht das Problem der fehlenden Generik in der Gestaltung der GUI, was gerade in großen Applikationen mit vielen eigenen Modulen problematisch ist. Weiterhin verschweigt auch die Dokumentation immernoch einige Zusammenhänge, aber es ist letztlich deine Entscheidung ist und das respektiere ich auch.

    Wirklich erschreckend war der Benchmark, nur denke ich hast du mit einer statischen Seite nichts anderes als einen 100 Zeil Code getestet der eigentlich gar keine Business Logik enthält und somit einen ziemlichen Overflow erzeugt.
    Hier muss ich eindeutig wiedersprechen. Alle Frameworks mussten die selben Aufgaben im Test erfüllen. Wenn du dir die Aufgaben anschaust, waren es nicht nur triviale, sondern auch Themen wie Formular-Handling und die Einbindung von Modulen.

    Ich denke bei komplexeren Anwendungen, welche die geladenen möglichkeiten vom ZF ausnutzen sieht der Vergleich schon besser aus. Wie du schon geschrieben hast, sind Frameworks nicht für kleine Internetseiten entwickelt.
    Sind wir doch mal ehrlich: komplexer Anwendungen sind immer langsamer als einfache.

    Einen Kommentar schreiben:


  • night
    antwortet
    Ich kann sicher nicht leugnen, dass ich mit dem ZF in gewisser Weise einen Trend gefolgt bin, welcher aber nicht umbedingt falsch ist. So ist das Framework sehr sauber Programmiert und Dokumentiert, es gibt eine große Community, was bei Problemen sehr hilfreich sein kann. Durch die große und teilweise sehr namenhafte Entwicklergemeinde ist eine schnelle Reaktion auf Fehler und eine stetige Weiterentwicklung möglich.

    Dein Test ist recht nett gemacht, nur würde ich manche Einschätzungen nicht teilen. Ich brauche zum Beispiel keine Demo Applikation und keinen PHP 4 Support. Ich persönlich finde die Dokumentation des ZF sehr gut und ausreichend, das selbst Denken kann einem ja keiner ab nehmen. Auch im Bereich Layout hat sich beim ZF was getan, es gibt nun Zend_layout, genauso wie Zend_forms. Alles Minuspunkte, die so entweder nicht mehr aktuell sind oder recht subjektiv.

    Wirklich erschreckend war der Benchmark, nur denke ich hast du mit einer statischen Seite nichts anderes als einen 100 Zeil Code getestet der eigentlich gar keine Business Logik enthält und somit einen ziemlichen Overhead erzeugt. Ich denke bei komplexeren Anwendungen, welche die geladenen möglichkeiten vom ZF ausnutzen sieht der Vergleich schon besser aus. Wie du schon geschrieben hast, sind Frameworks nicht für kleine Internetseiten entwickelt.

    Beste Grüße David

    Einen Kommentar schreiben:


  • dr.e.
    antwortet
    @SJahr:
    Zitat von SJahr Beitrag anzeigen
    Ich will ja nicht meckern, aber ich finde schon, dass du ein bisschen viel Werbung für dein Framework machst.
    Das mag schon sein, worauf es mir dabei aber am meisten ankommt ist es, die Wahrnehmung der Entwickler zu schärfen. Es ist immer einfacher, sich zurückzulehnen auf das ZF zu setzen, weil Zend dahinter steht oder CakePHP, weil die Cake Foundation maßgeblich für die Entwicklung verantwortlich ist. Viel wichtiger ist jedoch, seine Anforderungen zu kennen und ein Tool einzusetzen, weil es die Anforderungen unterstützt. Viele Entwickler setzen ein Framework ein, weil es chick ist und nicht weil es ihnen wirklich hilft effizienter zu werden. Nun mag man fordern, dass ein Framework immer bessere Effizienz schafft, bei einem Script mit 100 Zeilen Business-Logik lohnt es sich aber sicher nicht eine Framework einzusetzen, da der Overhead nicht gerechtfertigt ist.

    Da ich ehrlich bin, habe ich mir zusammen mit phpdummi im letzten Sommer die Frage gestellt: "Was kann das APF wirklich und wie verhält es sich zu den Mitbewerbern?". Das Ergebnis war ein Vergleichsartikel (siehe PHP Frameworks im Test), der an Hand einer vorher definierten Vergleichsmatrix die Vor- und Nachteile vergleicht. Anspruch war es, das evaluierte Framework für komplexe Applikationen einsetzen zu wollen, da einfache Webseiten - wie oben bereits gesagt - mit einfacheren Mitteln als mit einem Framework erstellt werden sollten. Prämisse war es zudem, dass man mit dem entsprechenden Framework ein Tool hat, mit dem komplexe Software-Designs einfach und effizient abgebildet werden können. Hier spielt vor Allem das Thema "Modularisierung" und die Bereitstellung von Standard-Lösungen für Standard-Probleme (Pattern-Abbildung) eine Rolle. Unter anderem wurden auch die zur Verfügung stehenden Materialien geprüft, die der Entwickler zur Verfügung hat um in das Framework einzusteigen.

    Nach der Evaluierung aller Frameworks - wobei das APF von phpdummi sehr kritisch beleuchtet wurde - gab es in vielen Punkten ein überraschendes Ergebnis, mit dem auch ich so nicht gerechnet hätte. Vor allem erschreckt hat mich der Benchmark-Vergleich, da hier das ZF aus dem Raster fällt und das APF trotz des wesentlich generischeren Kerns (GUI-DOM-Struktur) um Faktoren schneller ist.

    Wenn du dir diese Fragen ehrlich stellst, wirst auch du feststellen müssen, dass jedes Framework seine Nachteile hat. Das eine mehr, das andere weniger, bzw. jeweils in verschiedenen Bereichen. Ich könnte hier von einigen Erfahrungen während der Evaluierungsphase berichten, will mir das jedoch sparen. Auch habe ich die Entwicklung der Frameworks bis heute verfolgt und kann guten Gewissens sagen, dass der Artikel auch heute noch Aussagekraft beinhaltet.

    Es ist nun an dir, für dich herauszufinden, welches Framework zu dir passt und mit welchen Nachteilen du am besten Leben kannst!

    Einen Kommentar schreiben:


  • night
    antwortet
    Ich habe nicht gesagt das es die Referenz in dem Buch ist. Ich benutze es selbst und denke das es sehr gut ist. Arbeite bei einer Firma noch mit einer Eigenentwicklung was nicht an das ZF ran kommt. Außerdem bringt eine große Entwicklergemeinde und eine große Community schnelles Feedback bzgl Bugs und Updates.

    Einen Kommentar schreiben:


  • SJahr
    antwortet
    Ich will ja nicht meckern, aber ich finde schon, dass du ein bisschen viel Werbung für dein Framework machst.

    Zum Thema:
    Ich habe mir dieses Buch : Amazon.de: PHP Objects, Patterns, and Practice, Second Edition: Matt Zandstra: Englische Bücher bestellt und ich muss sagen es hält was es verspricht. In einem kleinen Teil geht es eher um Richtlinien, der Rest beschäftigt sich mit Patterns. Meiner Meinung nach war es das Geld wert.

    Einen Kommentar schreiben:


  • dr.e.
    antwortet
    @night:
    Ich würde da ja immer das Zend Framework empfehlen.
    Und du glaubst, das ZF ist die Referenz in diesem Bereich? Lies dir mal PHP Frameworks im Test durch und versuche dann nochmal darüber nachzudenken.

    Einen Kommentar schreiben:


  • night
    antwortet
    Vielleicht hilft es auch einfach bestehende PHP Frameworks an zu gucken ... Ich würde da ja immer das Zend Framework empfehlen.
    Ich habe mir gerade dieses Buch hier bestellt (Objektorientierte Programmierung mit PHP 5: Studienausgabe).
    Kommt leider erst in einer Woche oder so. Konnte mir mit meinem Gutschein keinen Laden aussuchen. Denke das ist auch sehr hilfreich um Enterprise Projekte zu planen und zu realisieren. Kann ja dann nochmal was dazu schreiben.

    Einen Kommentar schreiben:


  • Quadaptor
    antwortet
    Das Buch von George ist in der Tat eine Empfehlung wert. Habe es vor paar Jahren mal gelesen und dessen Inhalt bildet mit Sicherheit auch die Voraussetzung für die Umsetzung von Enterprise-Applikationen (d.h. das PHP-KnowHow), ABER das Buch ist zu spezifisch, um hinterher tatsächlich große Anwendungen entwickeln zu können. Wichtig ist, Bücher mit allgemeinen Themen, wie z.B. das bereits empfohlene von Martin Fowler, zu lesen. Architekturthemen sind weitgehend plattformunabhängig und sollten auch zunächst immer abstrakt geplant werden.

    Einen Kommentar schreiben:


  • night
    antwortet
    Hallo nadir, ich kann dir dieses Buch empfehlen:

    Professionelle PHP 5-Programmierung: Entwicklerleitfaden für große Webprojekte mit PHP 5von George Schlossnagle

    Ende Dezember soll es auch eine neue Auflage geben mit mehr Seiten, aber die wird dann auch teurer.

    Das Buch von Schlossnagle ist ein Ratgeber für genau solche Projekte (Enterprise) und umfasst eigentlich alle relevanten Themen. Ich habe es selbst im Regal stehen und war/bin recht begeistert von dem Buch.

    Gruß
    David

    Einen Kommentar schreiben:


  • Quadaptor
    antwortet
    Zitat von Thomas Beitrag anzeigen
    Hi,

    Das Buch handelt zwar von Patterns in EAs, aber geht auch auf Probleme wie Nebenläufigkeit usw ein und ist aufjedenfall lesenswert.

    Amazon.de: Patterns für Enterprise Application-Architekturen: Martin Fowler: Bücher

    Gruß Thomas

    €: Im Grunde genommen sind diese Enterprise Anwendungen nur größere Projekte. Die Programmierung funktioniert genauso wie beim Gästebuch, Forum oder was auch immer. Der Unterschied liegt später in der Erweiterung und Pflege, was ein Vorposter schon genannt hat. Dafür gibts ja dann Patterns, welche in meinem Buch besprochen werden.
    Zitat von SJahr Beitrag anzeigen
    Hat jemand das Buch schon einmal gelesen und kann sagen ob das gut oder schlecht ist? Hätte nämlich auch Interesse daran.
    Ja, sehr sehr gutes Buch, durch und durch. Ich kanns absolut nur weiterempfehlen.

    Einen Kommentar schreiben:


  • Manko10
    antwortet
    @Dr. E: die Amazon-Links führen bloß auf eine Seite mit einer hübschen großen dreistelligen Zahl.

    Das Buch PHP Design Patterns kann ich empfehlen. Es behandelt aber eher Design Patterns allgemein und deren Umsetzung in PHP. Es gibt zwar auch ein umfangreiches Kapitel für Enterprise-Patterns wie Front-Controller, Intercepting, Event-Dispatcher und Template-View, aber das ist nicht unbedingt der Hauptschwerpunkt des Buches.
    Wobei das ganze Buch natürlich darauf abzielt, wie man eine lose Kopplung der Klassen erreicht, nur gegen Interfaces implementiert etc.

    Einen Kommentar schreiben:


  • dr.e.
    antwortet
    Zitat von SJahr Beitrag anzeigen
    Hat jemand das Buch schon einmal gelesen und kann sagen ob das gut oder schlecht ist? Hätte nämlich auch Interesse daran.
    Die Bücher, die ich auf dem Link aufgeführt habe, stehen alle bei mir aufm Regal und sind alle zu empfehlen.

    @Thomas: Das Buch von Martin Fowler war da übrigens schon dabei.

    Einen Kommentar schreiben:

Lädt...
X