Community programmieren !

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

  • Community programmieren !

    Hallo zusammen,

    ich plane eine Community zu coden mit allem was dazugehört:
    Singlebörse,Nickpage,Blogs,Gästebücher,Shoppingbereich,Partydates etc.
    Das ganze soll natürlich auf OOP basieren.
    Ich bin jetzt zurzeit bei der Projektplanung und überlege mir , wie ich meine classen gestalten soll. Ich habe mich schon mit Design Patterns beschäftigt. Allerdings gibt dafür mehere Möglichkeiten, wie man so was programmiert. Das größte Problem ist für mich die Klassengestaltung und die Beziehung zueinander. Kann mir vielleicht jemand erklären, wie ich an so was am besten rangehen soll, vielleicht mit ein paar einfachen Beispielen.
    Für jegliche Hilfe wäre ich sehr dankbar.

    slayter

  • #2
    Kann dir nur empfehlen dir diverse OOP basierte Frameworks, aber auch Anwendungen mal anzuschauen.

    Stichworte sind Design Patterns in der konkreten Anwendung, Modulare Entwicklung, MVC.

    Der Begriff "Klassen" lässt sich auch noch genauer betrachten. Bei mir gibt es häufig Klassen die bestimmte Aufgaben erledigen (also die typische Lib), aber auch Module, Teile eines größeren Moduls oder Teile des Front-Controllers können Klassen sein.

    Es klingt so, als würdest du deine Planung sehr spezifisch auf dein Projekt beziehen. Wenn du ein Klassensystem präzise auf deine Community zuschneidest verlierst du möglicherweise die Widerverwendbarkeit, was ja einer der großen Vorteile der Objektorientierten Programmierung ist. Also weit genug abstrahieren und den genannten Aspekt mit bedenken.

    Kommentar


    • #3
      erstmal vielen Dank für deine Antwort.
      Ja, ich möchte erstmals den Code auf die Community zuschneiden.
      Ich habe mir jetzt überlegt, dass ich viel mit Interfaces arbeite bzw. gegen eine Schnittstelle programmiere. Und zwar habe ich mir folgendes überlegt.
      Ich erstelle ein Interface mit den gesamten Methoden.
      Das würde dann so aussehen.

      PHP-Code:

      interface interfaceCommunity {

          public function 
      message(interfaceMessages $message,$txt)

      //hier könnte ich dann auf das Interface zugreifen, welches die anderen klassen erfüllen wie z.b. private Nachrichten, öffentliche Nachrichten, Gästebucheinträge, Blogeinträge etc.

          
      public function user(userInterface $user);
          public function 
      newUser(interfaceNewUser $newUser);

        
      //hier folgen dann weitere Methoden, die so ähnlich aufgebaut sind
      }

      interface 
      interfaceMessages 

          public function 
      write($txt);

      //weitere Methoden

      }

      class 
      guestbook implements interfaceMessages {
          
          private 
      $txt;
          
          public function 
      __construct() {
              
          
          }
          
          final public function 
      write($txt) {
              
              
      $this->txt $txt
          
          }


      }


      class 
      blog implements interfaceMessages {
          
          private 
      $txt;
          
          public function 
      __construct() {
              
          
          }
          
          final public function 
      write($txt) {
              
              
      $this->txt $txt
          
          }


      }

      class 
      community implements interfcaeCommunity {
          
          public function 
      message(interfaceMessages $message,$txt) {
              
              
      $message->write($txt);
          
          }



          public function 
      user(userInterface $user) {
              
               
      //
          
      }
          public function 
      newUser(interfaceNewUser $newUser) {
              
               
      //
          
      }


      }



      $community new = community();
      $Blogmessage blog();
      $Gbmessage guestbook();

      $community->write($blogmessage,"HALLO");
      $community->write($Gbmessage,"WIE GEHTS ?"); 

      ist solch ein Ansatz sinvoll ?
      Danke im Voraus.

      slayter

      Kommentar


      • #4
        Nein, die Abhängigkeiten sind viel zu hoch.
        OOP heißt Kapseln - soweit wie möglich - bei dir hängt alles an einem Interface -> schlecht

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Naja..Ich dachte bei Schnitstellen sei der vorteil, das man klassen einfach austauschen kann, ohne die anderen klassen anzupassen, weil sie ja stets das Interface erfüllen.

          Kommentar


          • #6
            ich habe mir jetzt mal zwei MVC-Frameworks angeschaut. Einaml das von Zend und das andere CakePHP und finde beide wirklich interessant. Hat schon jmd. mit beinden Erfaharungen ? Welches von den beiden ist empfehlenswert ?

            slayter

            Kommentar

            Lädt...
            X