tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
388
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    illuminatus26 illuminatus26 ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Beiträge
    171
    Hallo zusammen,

    momentan arbeite ich mich gerade etwas in PHP ein. Der letzte Anlauf dazu liegt schon ein paar Jährchen zurück. Zwischenzeitlich habe mich Java beschäftigt.
    Nun mache ich mir seit ein paar Tagen Gedanken darüber, wie ich eine Webanwendung mit PHP objektorientiert umsetze. Also wie das ganze organisiert wird.
    Kennt jemand evtl. ein kleines Projekt, bei dem man den Aufbau einfach nachvollziehen kann?

    Vielen Dank
     

  2. #2
    Tim Bureck Tim Bureck ist offline Mitglied Platin
    Registriert seit
    Apr 2009
    Ort
    Düsseldorf (NRW)
    Beiträge
    508
    Da sich schon viele Leute vor dir damit beschäftigt haben, würde ich dir ein MVC-Framework wie Symfony oder das Zend-Framework empfehlen. Mit diesen hast du schon eine gute Basis, um eine OO Anwendung mit PHP zu erstellen. Bei Bedarf kannst du dich aber auch tiefer in die Materie einlesen, indem du dir den Aufbau der Frameworks anschaust.
     

  3. #3
    illuminatus26 illuminatus26 ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Beiträge
    171
    Vielen Dank für die schnelle Antwort.
    Ich würde aber gerne erst einmal ohne Framework arbeiten, da ich ein Verständnis für den Aufbau erhalten möchte und da ich glaube, dass der Einsatz eines Frameworks in manchen Fällen etwas überzogen ist.
    Lasse mich aber gerne eines besseren Belehren.
    Vielleicht hast Du ja einen anderen Tipp für mich.
     

  4. #4
    Avatar von einfach nur crack
    einfach nur crack einfach nur crack ist offline mag Cookies & Kekse
    tutorials.de Premium-User
    Registriert seit
    May 2007
    Ort
    Dresden (Sachsen)
    Beiträge
    1.956
    MVC ist in jedem Fall das Schlagwort schlechthin. Deshalb hier mal einige Beispiele:

    Generelles Routing:
    Code PHP:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    @list($controller, $action, $other) = explode('/', $_SERVER['QUERY_STRING'], 3);
     
    $controller = empty($controller) ? 'Application' : strtoupper($controller);
    $action     = empty($action)     ? 'index'       : $action;
    $other      = empty($other)      ? array()       : explode('/', $other);
     
    $controller .= 'Controller';
    $action      = 'Action' . strtoupper($action);
     
    $object = new $controller($other);
    $object->{$action}();

    Controller:
    Code PHP:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    abstract class AbstractController
    {
      protected $params = array();
      
      final public function __construct(array $params)
      {
        $this->params = $params;
      }
    }
     
    class ApplicationController extends AbstractController
    {
      
    }
     
    class BlogController extends ApplicationController
    {
      public function ActionIndex()
      {
        echo 'Indexseite';
      }
    }

    Und dann eben in Modellen (Models) die Daten verarbeiten und Views als Templates nutzen.
     
    Ich mag:
    • positive Bewertungen meiner Beiträge
    • ein Danke für meine hilfreichen Beiträge

    Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  5. #5
    illuminatus26 illuminatus26 ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Beiträge
    171
    N'Abend zusammen,

    ich habe die beiden letzten Tage genutzt, um mich ein wenig weiter mit der Materie zu beschäftigen.
    Also wenn ich das richtig verstehe, sind diese Frameworks Symfony, Zend, CakePHP, usw. eine Implmentation des MVC-Entwurfsmuster in PHP. Liege ich mit dieser Einschätzung richtig?
    Nun hat man die Möglichkeit, das Rad neu zu erfinden (dabei Gleichzeit aber auch zu lernen) und selber ein solches Framework zu erstellen oder man nimmt eines der bestehenden und arbeitet sich ein.
    Mein primäres Ziel ist es mit PHP eine Joomla-Erweiterung zu erstellen. Das Joomla-Framework zählt ja auch zu dieser Art von Frameworks, die ich weiter oben beschrieben habe. Ist das korrekt?
    Weshalb ich mich wohl dann in erster Linie damit beschäftigen werde.
     

  6. #6
    illuminatus26 illuminatus26 ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Beiträge
    171
    Zitat Zitat von illuminatus26 Beitrag anzeigen
    N'Abend zusammen,

    ich habe die beiden letzten Tage genutzt, um mich ein wenig weiter mit der Materie zu beschäftigen.
    Also wenn ich das richtig verstehe, sind diese Frameworks Symfony, Zend, CakePHP, usw. eine Implmentation des MVC-Entwurfsmuster in PHP. Liege ich mit dieser Einschätzung richtig?
    Nun hat man die Möglichkeit, das Rad neu zu erfinden (dabei Gleichzeit aber auch zu lernen) und selber ein solches Framework zu erstellen oder man nimmt eines der bestehenden und arbeitet sich ein.
    Mein primäres Ziel ist es mit PHP eine Joomla-Erweiterung zu erstellen. Das Joomla-Framework zählt ja auch zu dieser Art von Frameworks, die ich weiter oben beschrieben habe. Ist das korrekt?
    Weshalb ich mich wohl dann in erster Linie damit beschäftigen werde.
    War das etwa so großer Mist, dass sich eine Antwort dazu nicht lohnt?
    Würde mich freuen, wenn es dazu etwas Feedback gäbe.
     

  7. #7
    Avatar von einfach nur crack
    einfach nur crack einfach nur crack ist offline mag Cookies & Kekse
    tutorials.de Premium-User
    Registriert seit
    May 2007
    Ort
    Dresden (Sachsen)
    Beiträge
    1.956
    Also die von dir genannten Frameworks basieren in der Tat auf dem MVC-Pattern, allerdings ist Jommla kein Framework, sondern ein WebCMS. Wenn du genügend Zeit hast, dann solltest du vielleicht selber mal ein MVC-System erstellen. Ansonsten natürlich dir die anderen Frameworks ansehen und rausfinden, wie die das lösen.
    Geändert von einfach nur crack (05.07.11 um 17:13 Uhr) Grund: da hat das iPad aus Joomla Klömme gemacht :D
     
    Ich mag:
    • positive Bewertungen meiner Beiträge
    • ein Danke für meine hilfreichen Beiträge

    Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  8. #8
    illuminatus26 illuminatus26 ist offline Mitglied Gold
    Registriert seit
    Sep 2005
    Beiträge
    171
    Hallo und vielen Dank für deine Antwort.
    Mit Klömme meinst du Joomla?
    Ja, dass ist ein WebCMS, allerdings gibt es auch ein sog. Joomla-Framework, welches beim Entwickeln von Erweiterungen unterstützen soll.
    Irgendwo, leider finde ich das gerade nicht mehr und bin deshalb auch nicht mehr ganz sicher, meine ich, mal gelesen zu haben, dass man dieses Framework auch nutzen kann, um vom CMS losgelöste Webanwendungen zu entwickeln.
    Aber lasse mich auch gerne eines besseren belehren.
    Deine Anregung selber ein MVC-System zu erstellen hört sich gut an. Meinst du damit ein eigenes Framework, welches das MVC-Pattern implementiert?

    Nachtrag: Nun habe ich auch wieder gefunden, wo ich das gelesen habe. Es wurde im Joomla Entwicklerhandbuch geschrieben.

    http://books.google.de/books?id=ghPp...mework&f=false

    Nachtrag2: Da sucht man tagelang und findet nix vernünftiges. Dann hat man gute 5 Minuten und alle Fragen erledigen sich fast von alleine.

    http://www.joomlaportal.de/joomla-er...verwenden.html
    Geändert von illuminatus26 (05.07.11 um 16:34 Uhr) Grund: 2x Link-Nachtrag
     

Ähnliche Themen

  1. Objektorientierte Datenbank
    Von baldi im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 10.10.07, 14:41
  2. Objektorientierte Programmierung
    Von FiselM im Forum Java
    Antworten: 6
    Letzter Beitrag: 13.07.07, 08:36
  3. Objektorientierte Spieleprogrammierung in Flash
    Von timäää im Forum Flash Plattform
    Antworten: 26
    Letzter Beitrag: 31.08.06, 12:08
  4. UML und nicht-objektorientierte Sprachen
    Von Frankdfe im Forum Coders Talk
    Antworten: 0
    Letzter Beitrag: 25.08.05, 14:57