Prinzipielle Strukturfrage grosser OOP Applikationen

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

  • Prinzipielle Strukturfrage grosser OOP Applikationen

    Hallo,


    ich muss ein grösseres Projekt in PHP umsetzen, was ich sonst nur unter Java umgesetzt hätte.

    Es geht um folgendes Problem:
    Ein Kunde soll verschiedene Objekte besitzen, wie z.B. ein Chatprogramm, eine Mailoberfläche usw. Wiie geht man solche grosses Applikationen in PHP an ? Alle Elemente in Objekte Kapseln, oder wie ?

    liebe grüsse
    g-sus

  • #2
    Hi,

    Das wird genau so gehandhabt wie in Java und co auch.

    Gruß Thomas

    Kommentar


    • #3
      ein großer unterschied zu java besteht darin, dass skriptsprachen ja so eine art "momentaufnahme" einer anwendung darstellen - da http ein zustandloses protokol ist. das bedeutet, du musst immer im hinterkopf behalten, auf welche art die objekte miteinander kommunizieren. darum empfiehlt sich manchmal ein framework, eine plattform für die anwendung.

      Kommentar


      • #4
        Klassenstruktur und MVC-Modell wie in Java wäre die erste gängige Möglichkeit.

        Class Frameworks sind eine andere Möglichkeit und hilfreich weil sie Vorlagen für häufig gebrauchte Applikationen bieten.

        Persönlich benutze ich ein Component Framework. Dort kann ich Applikationen oder Teile von Applikationen als Komponenten kapseln und wie in einem Baukastensystem zusammensetzen.

        Das hat mir wirklich sehr geholfen. Probier's doch mal aus:
        http://pub.de.vu unter "Downloads". Du brauchst das "Gästebuch 2.7" und das "YANA Framework SDK". Das SDK ist ein Plugin-Generator, mit dem du dir 0815-Datenbankanwendungen "zusammenklicken" kannst.

        (Es steht zwar "Gästebuch" drauf, enthält aber das Framework UND als Beispielapplikation ein Gästebuch *g* == daher der sinnige Name)

        Läuft unter einer Creative-Commons Lizenz <- sprich: du zahlst nur, wenn du was Kommerzielles damit machst einen kleinen Obulus, sonst kostenlos.

        Ein sehr ähnliches Framework, aber eher für Content-Management Aufgaben ist "Seagull". Findest du bei Source-Forge. Wie das dort mit der Lizenz geregelt ist weiß ich allerdings nicht. Ich schätze aber mal Gnu GPL? Musst du mal schauen ob du damit kommerzielle Sachen machen darfst! Seagull verpasst deinen Applikationen außerdem eine sehr ansehnliche grafische Oberfläche. Ein echter Eye-Catcher

        Dann wäre da noch das Zend-Framework, ein Class-Framework, welches aber noch in der Entwicklung ist. Preview gibt's bei Zend.com zum Download. Hat eine proprietäre Lizenz. Bei den Details muss man wohl die Beta abwarten.

        Und dann gäbe es noch das BRIM-Framework, welches ich dir ebenfalls ans Herz legen kann (Sourceforge). Sehr ähnlich Seagull, aber es enthält keine Template-Engine.

        Es gibt noch ein paar andere Beispiele, aber dies sind die, welche mir spontan einfallen und zu denen es vor allem eine ausreichende Dokumentation gibt.

        Wie gesagt: probier's mal aus. Persönlich bin ich ein großer Fan davon.
        Zuletzt geändert von Marcusson; 06.03.2006, 21:44.

        Kommentar


        • #5
          vielen dank für diese sehr ausführliche & gute antwort !

          Kommentar


          • #6
            OffTopic:
            Falls du dieses ominöse Framework namens Gästebuch in Betracht ziehst, lies http://www.php-resource.de/forum/sho...&postid=429839
            Nicht dass es hinterher heißt, man hätte dich nicht gewarnt...

            Kommentar


            • #7
              das sieht mir aber nicht ausreichend professionell aus... Gibt es überhaupt professionelle PHP Lösungen da ? Sind ja echt ne Menge frameworks vorhanden

              Kommentar


              • #8
                Ich bevorzuge die altmodische Art, alles in eigener Handarbeit ohne Frameworks. Es werden nur meine eigenen Klassen benutzt.

                Aber wenns um ein professionelles Framework geht, dann wird das von Zend wohl eins sein.

                Kommentar


                • #9
                  Original geschrieben von onemorenerd
                  OffTopic:
                  Falls du dieses ominöse Framework namens Gästebuch in Betracht ziehst, ...
                  Nicht dass es hinterher heißt, man hätte dich nicht gewarnt...
                  OffTopic:
                  Wieso gewarnt? Wenn er etwas kommerzielles machen will, braucht er eine kommerzielle Lizenz. Da nützt ihm die schönste Open-Source Software nix, wenn er das Produkt hinterher nicht mehr verkaufen darf. Außerdem braucht er wahrschl. im Ernstfall die Möglichkeit via Mail/Telefon Support zu bekommen. Richtig? Kann er haben! Da ist auch nichts ominöses dran: Creative-Commns Licence, mehr Standard geht gar nicht mehr. Gewerbe ist auch ordnungsgemäß beim Finanzamt angemeldet. Das jemand Geld zahlen muss, ist bisher allerdings die absolute Ausnahme - nicht die Regel. Ich habe insgesamt weltweit nur etwa 5 Leute, welche kommerziell damit arbeiten und deshalb im Schnitt etwa 50 Euro pro Kopie gelöhnt haben. Wohl gemerkt: nicht für die Software, denn die ist kostenlos, sondern für den Support. Meistens Probleme mit der Installation (Datenbank läuft nicht, et cetera).


                  Professionelle Frameworks für PHP, ... hmm schwierig. In den preisgünstigen Regionen hätten wir Code-Charge. Das ist aber ein Rapid-Prototyper und kein Framework im engeren Sinne. Kostet 500 Euro.

                  Jenseits der 500 Euro wird's jedoch ziemlich schnell sehr viel teurer. Vor allem weil du bei manchen Herstellern entweder pauschal oder pro verkaufter Lizenz deines Produkts einen gewissen Anteil an den Hersteller durchreichen musst.
                  OffTopic:
                  Das Spielchen hatten wir schonmal bei uns in der Firma. 1500 Euro für das Framework, 750 Euro für die Schulung, eine größere Summe für kundenspezifische Erweiterungen, weil das Framework gar nicht alles konnte, was wir brauchten und eine Unsumme für ein Paket von 5000 Lizenzen für den Verkauf unserer damit erstellten Software. *grummel* Und dann konnte das Framework im Endeffekt nicht mal Kaffee kochen.


                  Wenn es was kostenloses sein MUSS, ist das "professionellste" was ich im "nicht-professionellen" Bereich kenne Seagull. Mehr ist für lau wahrscheinlich nicht drin. Wobei ich da vielleicht ein bisschen voreingenommen bin. Seagull ist meiner privaten Lösung sehr änlich und unterscheidet sich nur in Details, wie der Nutzerverwaltung, welche bei Seagull eleganter gelöst ist (bis jetzt). Aber ich arbeite daran. Dafür hat Seagull kein Rapid-Prototyping (bis jetzt). Aber die Jungs arbeiten daran

                  Meine private Lösung hat eine Schwachstelle: sie ist für kleine Webseiten gedacht. Hauptsächlich mache ich das für Schulen und gemeinnützige Vereine, oder kleine private Communities - keine PHP/SQL-Profis also. Deshalb bietet dir das Ding beispielsweise eine Datenbankschnittstelle, bei der du für die meisten Standardaufgaben (Insert, Update, Delete, Transaktionen, einfache Joins) völlig ohne SQL auskommst und ähnliche Schmankerl für Laien.

                  Wenn du bereits Vollprofi bist und es was größeres sein soll, mit einer richtigen dicken Datenbank drunter, tiefer Klassenhierarchie und vielen Dateien, dann nimm Seagull!

                  PS: Zend Framework <- derzeit nur als Preview verfügbar
                  Zuletzt geändert von Marcusson; 07.03.2006, 12:34.

                  Kommentar


                  • #10
                    Habe gerade noch was gefunden, was auch nicht schlecht ausschaut.

                    Das "Horde PHP Application Framework" (Horde.org) ist aber offensichtlich ein ziemlich dicker Brocken. Ein Funktionsmonster, dass dir die Wäsche wäscht, die Katze füttert und Kaffee kocht Na ja - nicht wirklich, aber die Featureliste liest sich fast schon so.

                    Creative Commons Licence, Support gibt's nur nach Lust und Laune, außer du hast Bargeld. Wenn du mit den Scheinchen wedelst gibt's eine Sonderbehandlung.

                    Please be careful not to have unreasonable expectations: you can not demand your questions to be answered, bugs to be fixed or features implemented. If you require service or delivery guarantees please consider hiring a paid consultancy.
                    (Quelle: http://www.horde.org/support.php)

                    Die Liste der verfügbaren Erweiterungen ist ziemlich beeindruckend (http://horde.org/source/modules.php).

                    Insgesamt eher was für die Profis und nicht wirklich für Anfänger geeignet.

                    Ich bin gerade am saugen -> will mir das aus der Nähe anschauen.

                    Das hier finde ich allerdings nicht so toll:

                    Unfortunately, the documentation for Horde applications often lags behind the application itself, and much of the current versions of Horde applications remain undocumented.
                    (Quelle: http://wiki.horde.org/FAQ/User/Gener...rer=FAQ%2FUser)

                    Kommentar


                    • #11
                      hmm, um das mal zusammen zu fassen : Es gibt kein sauberes brauchbares Framework für PHP Appliktionen was wie Tomcat und Resin unter java vernünftig funzt und gepflegt wird... oder ?
                      defacto muss ich mich hinsetzen und selber was bauen , oder ?

                      Kommentar


                      • #12
                        Du kannst Tomcat/Resin doch nicht mit PHP-Frameworks vergleichen?!

                        Kommentar


                        • #13
                          Original geschrieben von onemorenerd
                          Du kannst Tomcat/Resin doch nicht mit PHP-Frameworks vergleichen?!
                          100% ACK!

                          Kommentar


                          • #14
                            @ 100% ACK!

                            100% Arbeitsgemeinschaft Christlicher Kirchen????
                            In Flames - Pinbal Map
                            Becoming the Archetype - No Fall Too Far
                            Pantera

                            Kommentar


                            • #15
                              @ Arbeitsgemeinschaft Christlicher Kirchen

                              Nein: Automobil Club Kaiserslautern

                              Kommentar

                              Lädt...
                              X