Ankündigung

Einklappen
Keine Ankündigung bisher.

Symfony2

Einklappen

Neue Werbung 2019

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

  • #16
    Aspekte zu Debuggen ist wirklich fies. Vor allem, wenn es ein Timining Issue ist, dass beim Debuggen nicht auftritt *grml*
    Ich bin jetzt einige Wochen in ein Java-Projekt involviert und ich muss sagen, dass das bei uns überhaupt keine Probleme macht. Vielleicht liegt das generell an der saubereren Struktur von Java, dass hier solche Probleme gar nicht auftreten. Wenn ich schon mal was debuggen muss, dann weiß ich jedes Mal, wo ich ansetzen muss.

    Kommentar


    • #17
      Ich denke es kommt drauf an, was man damit macht. Ich habe mit Aspekten nur an der Uni zu tun gehabt, da war alles noch etwas expirementell

      Kommentar


      • #18
        Wäre so etwas auch eine aspektmässige Umsetzung: http://de.slideshare.net/rosstuck/ex...model-13257781
        So etwas finde ich ja irgendwie extrem fies

        Das mit dem Datensatz schreiben/aktualisieren geht ja noch, da es direkt im Entity steht, aber das Auslesen ist ja alles andere als transparent.

        Ohne eine saubere Struktur und Dokumentation wo man solche Sachen gleich auf den 1. Blick sieht, ist man ja verloren, finde ich.
        Wie handhabt ihr den so etwas?

        Kommentar


        • #19
          Was gefällt Dir da jetzt konkret nicht? Ich verstehe jetzt nicht den Zusammenhang mit dem Auslesen..

          Kommentar


          • #20
            Mir gefällt/gefiel Anfangs diese Undurchsichtigkeit nicht.

            zB sah bisher der Code mit dem ich gearbeitet habe folgendermassen aus:

            PHP-Code:
            abstract class DbItem{

            public function 
            save(){
            EVENT::call('preSaveDbItem'$this);
            $this->_insert();
            EVENT::call('postSaveDbItem'$this);
            }

            class 
            User extends DbItem{

            public function 
            save(){
            parent::save();
            $this->sendModerationMail();

            protected function 
            sendModerationMail(){
            ....
            }

            Hier sieht man direkt was passiert, da sich ja die Eventaufrufe direkt in der Klasse befinden und sobald man weiß wie das Eventsystem funktioniert, weiß man auch wo man nach den Plugins suchen muss.

            Nun wird der Code aber so ausschauen:

            PHP-Code:


             
            *
             * @
            ORM\Table(name="app_user")
             */
            class 
            User{

             private 
            $username;
             
             
             private 
            $mail;

            und das war es hier....

            Was wie wo im Hintergrund passiert, ist auf den 1. Blick komplett undurchsichtig und je nach Applikation / oder Symfony2 Bundle, da ich mich gerade damit befasse leichter oder schwerer zu finden

            Kommentar


            • #21
              ist auf den 1. Blick komplett undurchsichtig und je nach Applikation / oder Symfony2 Bundle, da ich mich gerade damit befasse leichter oder schwerer zu finden
              Richtig - Aber so etwas zu durchschauen, wird doch mit der Komplexität der Applikation in jedem Fall größer - Hast Du dir mal die DI-Mechanismen von ZF2 oder Symfony2 angeschaut? Da kannst Du mir nicht erzählen, dass die ohne großen Aufwand durchschaubar wären.. Genauso ist es hier - Wenn Du den Mechanismus von Doctrine2 durchgehst, kommst Du auch über kurz oder lang zu der Stelle, wo die Annotations ausgewertet werden.

              Kommentar

              Lädt...
              X