Ankündigung

Einklappen
Keine Ankündigung bisher.

HMVC Frage

Einklappen

Neue Werbung 2019

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

  • #31
    Das ist ein Objekt, dass diverse Dinge zur Verfügung stellt (Request, Response, Authentifizierung, ACL und eben auch hmvc-Funktionalität).

    Kommentar


    • #32
      EIN Objekt tut dies alles? Warum denn das?
      [COLOR="#F5F5FF"]--[/COLOR]
      [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
      [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
      [COLOR="#F5F5FF"]
      --[/COLOR]

      Kommentar


      • #33
        Wie ich uncle bob nicht ausstehen kann!
        Viele Grüße,
        Dr.E.

        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        1. Think about software design [B]before[/B] you start to write code!
        2. Discuss and review it together with [B]experts[/B]!
        3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
        4. Write [I][B]clean and reusable[/B][/I] software only!
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        Kommentar


        • #34
          EIN Objekt tut dies alles? Warum denn das?
          Was ist denn "das alles"? Es macht sogar noch mehr, aber das ist nebensächlich.
          uncle bob
          Habe ich was nicht mit bekommen?

          Kommentar


          • #35
            ucle bob ist auch als „GOD object“ oder „Big hairy object“ bekannt.
            [COLOR="#F5F5FF"]--[/COLOR]
            [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
            [COLOR="#F5F5FF"]
            --[/COLOR]

            Kommentar


            • #36
              Ok - Wo würdet ihr denn diese Objekte hin packen? DI, nehme ich mal an. Und vielleicht ist ja das App-Objekt genau dieses..

              Kommentar


              • #37
                God Class

                Zitat von xm22 Beitrag anzeigen
                Ok - Wo würdet ihr denn diese Objekte hin packen? DI, nehme ich mal an. Und vielleicht ist ja das App-Objekt genau dieses..
                So sieht der Code aber nicht aus. Und du schreibst, es stellt Funktionalität zur Verfügung. Ein DI Container hat selber eigentlich keine Funktionalität und arbeitet relativ still im Hintergrund oder nicht?
                [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
                [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

                Kommentar


                • #38
                  Ok - Wo würdet ihr denn diese Objekte hin packen?
                  Also, aus Deinem Satz
                  Das ist ein Objekt, dass diverse Dinge zur Verfügung stellt (Request, Response, Authentifizierung, ACL und eben auch hmvc-Funktionalität).
                  habe ich herausgelesen, dass Du Request, Response ... alles in einem Objekt kapselst. Meinst Du etwa eine Registry?
                  [COLOR="#F5F5FF"]--[/COLOR]
                  [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                  „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                  [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                  [COLOR="#F5F5FF"]
                  --[/COLOR]

                  Kommentar


                  • #39
                    Hallo xm22,

                    sei mir nicht böse, aber ich konnte mir "uncle bob" (~=god object) nicht verkneifen. Das ist genau die Form von Abstraktion, von der ich in meinen Posts nicht sprach. Wenn du eine Registry haben möchtest - aus welchen Gründen auch immer - dann soll das auch namentlich eine solche sein. Möchtest du Request und Response abstrahieren, was ich persönlich für einen Blödsinn halte, da es keinen Mehrwert gegenüber den in PHP vorhandenen Mechanismen bringt, dann bitte nicht alles in einem Objekt.

                    An der von dir zitierten Stelle möchtest du ein HMVC-Modul einklinken. Dazu braucht es ein Rahmenwerk über das du dieses tun kannst - eine Art Container. Diesem werden per DI die relevanten Informationen mitgegeben und in diesem wird es ausgeführt. Das sind jedoch Komponenten, über die wir hier sprechen, die nichts mit einem App-Objekt zu tun haben, sondern im Sinne eines OO-Design eigenständig modelliert werden müssen. Du kaufst ja einen Weber-Grill auch nicht im Klamotten-Laden.

                    Ich würde dir deshalb empfehlen, nicht krampfhaft am HMVC-Ansatz zu schrauben, damit du hinterher etwas fertiges vorzuweisen hast, sondern zu versuchen, das Ganze zunächst zu modellieren um die klar zu werden, an welchen Stellen du was überhaupt benötigst. Stell dir Fragen wie
                    • Wie ist ein Baum aufgebaut?
                    • Welche Mechanismen braucht der Entwickler für eine Moduarisierung?
                    • Welche Services müssen zur Verfügung gestellt werden, damit ein Modul arbeiten kann?
                    • Welche Abhängigkeiten sind notwendig, welche sollten vermieden werden?
                    • Wie ist das Timing-Modell der Baum-Verwaltung und wo muss ein Entwickler eingreifen können um bestimmte Verhalten realisieren zu können?
                    • Was bedeutet das MVC-Pattern innerhalb eines MVC-Baumes?
                    • Welche Anforderungen hat ein Entwickler an die MVC-API, bzw. wie soll sich ein Controller realisieren lassen?

                    Erst dann ist es sinnvoll die Implementierung zu starten.
                    Viele Grüße,
                    Dr.E.

                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    1. Think about software design [B]before[/B] you start to write code!
                    2. Discuss and review it together with [B]experts[/B]!
                    3. Choose [B]good[/B] tools (-> [URL="http://adventure-php-framework.org/Seite/088-Why-APF"]Adventure PHP Framework (APF)[/URL][URL="http://adventure-php-framework.org"][/URL])!
                    4. Write [I][B]clean and reusable[/B][/I] software only!
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

                    Kommentar


                    • #40
                      dass Du Request, Response ... alles in einem Objekt kapselst.
                      Möchtest du Request und Response abstrahieren
                      Nein - Das sind alles eigenständige Objekte.

                      was ich persönlich für einen Blödsinn halte, da es keinen Mehrwert gegenüber den in PHP vorhandenen Mechanismen bringt
                      Wenn ich mir überlege, dass die Applikation vielleicht auch per Console aufgerufen werden könnte, oder die Response sonstwie automatisiert werden sollte, finde ich schon, dass das eine gute Idee ist. Auch ein separates Request-Objekt halte ich persönlich für erforderlich. In meinem Framework übernimmt dieses auch Teile des Front-Controllers und die Erstellung von URLs.

                      Ich würde dir deshalb empfehlen, nicht krampfhaft am HMVC-Ansatz zu schrauben, damit du hinterher etwas fertiges vorzuweisen hast
                      Das Ganze ist seit mittlerweile 3 Jahren gereift. Es sind dabei alle Anforderungen beachtet wurden, die sich aus mehrjähriger Erfahrung ergeben haben - Dazu gehört auch die Effizienz beim Umsetzen von Applikationen. Mag sein, dass ich nicht allen Paradigmen der Software-Entwicklung entspreche, aber bei mir hat Produktivität Vorang vor Theorien - Damit meine ich allerdings nicht, dass ich Frickeleien und Hacks bervorzuge - Im Gegenteil. Ich versuche auch nicht, krampfhaft an etwas festzuhalten, sondern dieser Ansatz hat sich als der beste herausgestellt.

                      Die Diskussion geht hier jetzt in Richtung eines Aspektes des Frameworks - Mein Post sollte nur zeigen, wie effizient das Einbinden einesw HMVC-Knoten sein kann ohne GUI-Strukturen zu nutzen.

                      Kommentar

                      Lädt...
                      X