[OOP] andere Klasse an aktuelle Klasse anhängen

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

  • #16
    Machs jetzt so:

    PHP-Code:
    $oLayout->addDivContainer() //member $oDivContainer wird mit object DivContainer belegt
    $oLayout->oDivContainer->addDivStart(/*bla*/); //member $sHtml der klasse layout wird mit den Divelemt gefüllt. <div>
    $oLayout->oDivContainer->addDivEnd(); //member $sHtml der klasse layout wird mit den Divelemt gefüllt. </div>
    $oLayout->getContent(); 
    Erfüllt auch seinen Zweck, denke ich...

    Kommentar


    • #17
      eher eine glaubensfrage *g
      mfg

      Kommentar


      • #18
        Original geschrieben von hall
        eher eine glaubensfrage *g
        In wie fern Glaubensfrage?

        Kommentar


        • #19
          Ich habe mein vorheriger Beitrag ein wenig verändert, und ein kleine Beispiel über die vorteile von __set , __get und __call dazu angehängt
          Zuletzt geändert von Slava; 30.09.2006, 21:36.
          Slava
          bituniverse.com

          Kommentar


          • #20
            Hi,

            aus OO-sicht ist das nicht logisch, mit vererbung zu arbeiten. Hier ist wohl
            eher containment gemeint. Ein layout hat elemente.
            Es macht auch keinen sinn, dass das layout-object ein proxy für seine enthaltenen
            elemente ist.

            Wenn man an die verschachtelten strukturen von html denkt kommt man schnell
            zu dem schluss dass ein element ebenfalls ein container für elemente sein kann.
            Das wiederum führ dazu dass man die layout-klasse ganz weglassen kann.

            Das root-element, meistens das html-element so wie alle anderen elemente besitzt
            eine render-methode die suckzessive die render-methode der kind-elemente aufruft.
            Layout ist also etwas dass ich nicht extra als klasse formulieren würde sondern
            als abstrakte begrifflichkeit beibehalten würde.

            Das ist der rein logische weg. Es gibt sicher abkürzungen die man gehen kann
            wenn es um die konkrete implementierung geht. Aber um es nochmal zu sagen,
            vererbung dafür herzunehmen halte ich für falsch.

            greets
            (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

            Kommentar

            Lädt...
            X