Ankündigung

Einklappen
Keine Ankündigung bisher.

Welche Nachteile hat PHP eurer Meinung nach?

Einklappen

Neue Werbung 2019

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

  • Welche Nachteile hat PHP eurer Meinung nach?

    Hallo allerseits,

    entschuldigt bitte die weitere "Umfrage" aber ich würde gerne mal von euch wissen was euch bei PHP nicht so gefällt.
    Wie im letzten Thread erwähnt arbeite ich ja an einem Java Framework, und daher würde ich gerne wissen welche Nachteile ihr so an PHP seht, und ob man diese vielleicht im Java Framework ausmerzen könnte.

    Ich persönlich habe folgende Nachteile realisiert als ich PHP programmiert hatte:
    - Mangelnde Möglichkeiten Daten zwischen Seitenaufrufen zu speichern.
    So muss man z.b. Bei jedem Seitenaufruf des Forums ein query an die Datenbank schicken um herauszufinden welche Kategorien/Foren das Forum hat. Da ist es praktischer diese Kategorien als Array oder Liste direkt im Code verfügbar zu haben, und nur neu aus der Datenbank zu laden wenn sich die Kategorien geändert haben. (Jeder kann sich vorstellen wie viele Queries man der Datenbank damit erspart)
    - Performance
    Naja grundsätzlich wie der obere Grund. Die Performance leidet darunter wenn man bei jedem Seitenaufruf zahleiche configs parsen, und eigentlich statische Daten aus der Datenbank holen muss
    - Man ist beim programmieren zu frei (oder: "Jeder kann programmeiren wie er grad lustig ist")
    Manche werden sich jetzt denken "hat der einen and der Waffel?". Aber ich denke das ist Geschmackssache, eingeschränktere Möglichkeiten in der Code Architektur/Gestaltung sind zum einen positiv für Maschinelles Verarbeiten (also für IDEs Vorteilhafter um z.b. Code Assists usw bereitzustellen) und vor allem macht es auch für Programmierer einfacher unbekannten Code zu verstehen, da er die Architektur bereits kennt und nicht erst die Architektur kennen lernen muss bevor er versuchen kann den code zu verstehen.
    Außerdem führen bei mir des öfteren solche Freiheiten dazu Bugfixes oder kleine features unsauber in den code "einzuhacken" statt sie ordentlich in die architektur zu integrieren. Aber das ist ja eine rein persönliche sache


    gruß
    Dennis

    PS: Ich will weißgott PHP nicht schlecht machen, nur hat jede Programmiersprache jedes Framework ihre Nachteile, so auch PHP.

  • #2
    Hi Dennis.

    * Typen"losigkeit"
    * UTF-8-Unterstützung nur über Umweg
    * Keine Mehrfachvererbung
    * Nervige Konfigurationsparameter oder zumindest fehlerträchtigen Defaults (error_reporting, short_open_tags, Existenz von register_globals, ...)
    * Vermisse die Möglichkeit, bestimmte PHP-Optionen quasi zur Laufzeit ändern zu können (z.B. register_globals, magic_quotes_gpc, auto_prepend_file etc.)
    * Inkonsistente Reihenfolge der Funktionenparameter
    * Geschweifte Klammern zur Begrenzung von Blöcken (ich würde in PHP auch lieber nur mit Einrückungen arbeiten)
    * So viele Schwierigkeiten, etwas plattformunabhängig zu gestalten
    * ...

    Basti

    Kommentar


    • #3
      Java hat doch aber auch keine Mehrfachvererbung, oder?

      Kommentar


      • #4
        Die einzige möglichkeit Mehrfachvererbung in Java zu verwenden funktioneirt über Interfaces (Klassen welche nur abstrakte Methoden enthalten).
        Alles andere habe ich aber bisher noch nie verwenden müssen.
        Also damit kann ich leider nicht dienen.

        Also ich habe mal etwas ausführlicher Beschrieben was ich vor habe. Und ich suche immer noch Leute die mich dabei eventuell Unterstützen könnte, da ich denke dass das Projekt eigentlich eine ganz gute Idee ist.

        http://svn.sourceforge.net/viewcvs.c.../why_thor.html
        (Bitte wieder die ganze URL kopieren, und in die Adressleiste einfügen)

        Kommentar


        • #5
          Zitat von xardie
          Die einzige möglichkeit Mehrfachvererbung in Java zu verwenden funktioneirt über Interfaces (Klassen welche nur abstrakte Methoden enthalten).
          Interfaces enthalten nur Funktionsprototypen - ohne Funktion nur Definition

          Abstrakte Klassen enthalten abstrakte Methoden/Eigenschaften auch Funktionsprotoypen genannt aber halt durch das Schlüsselwort abstract kenntlich gemacht damit man sie von den "normalen" Methoden die man in abstrakten Klassen ebenfalls definieren kann unterscheiden kann.

          Kommentar


          • #6
            Es geht hier um die Nachteile von PHP und nicht um die von Java.

            Was ich bei PHP noch vermisse ist das Überladen (ich weiß, dass es dafür "Notlösungen" gibt).

            Kommentar


            • #7
              Zitat von HStev
              Zitat von xardie
              Die einzige möglichkeit Mehrfachvererbung in Java zu verwenden funktioneirt über Interfaces (Klassen welche nur abstrakte Methoden enthalten).
              Interfaces enthalten nur Funktionsprototypen - ohne Funktion nur Definition

              Abstrakte Klassen enthalten abstrakte Methoden/Eigenschaften auch Funktionsprotoypen genannt aber halt durch das Schlüsselwort abstract kenntlich gemacht damit man sie von den "normalen" Methoden die man in abstrakten Klassen ebenfalls definieren kann unterscheiden kann.
              Erm... sagte ich das nicht? Ich hab doch geschrieben dass Interfaces "nur" (also ausschließlich) abstrakte Methoden enthalten (na gut, statische felder sind auch möglich aber das ist eine andere Geschichte).

              Kommentar


              • #8
                Das Überladen von Funktionen/Methoden.

                Kommentar


                • #9
                  generell verstehe ich die frage nicht wirklich, php ist eine hervoragende sprache. das bedeutet ja nicht, das für die unterschiedlichen anforderungen nicht einen andere sprache eigesetzt werden muss/sollte.
                  die vielzahl an möglichkeiten die php bietet verleitet einen nur alles in php machen zu wollen statt eine komination aus den richtigen sprachen für die notwendige anforderung zu suchen und zu finden.

                  Kommentar


                  • #10
                    Zitat von sysop
                    generell verstehe ich die frage nicht wirklich, php ist eine hervoragende sprache. das bedeutet ja nicht, das für die unterschiedlichen anforderungen nicht einen andere sprache eigesetzt werden muss/sollte.
                    die vielzahl an möglichkeiten die php bietet verleitet einen nur alles in php machen zu wollen statt eine komination aus den richtigen sprachen für die notwendige anforderung zu suchen und zu finden.
                    Ich habe nie behauptet, dass PHP keine hervorragende Sprache ist. Aber auch PHP hat Nachteile, das kann niemand leugnen. Genauso wie mein Framework Nachteile hat/haben wird.
                    Und ich wollte eben nur wissen wo ihr Nachteile in PHP seht, was ich vielleicht in meinem Framework besser machen könnte.

                    Kommentar


                    • #11
                      PHP ist keine hervorragende Sprache. Wenn das so wäre, würde sich nicht jede Pappnase darauf stürzen, der mit VB ein "Hello world"-Programm schreiben kann. Die Reglementierung sind einfach nicht streng genug und verleiten zu einer schlampigen Programmierung, wie man tagtäglich im Anfänger-Forum sieht. Mir persönlich wäre es lieber, wenn PHP mindestens genauso streng zur Sache gehen würde, w.z.B C/C++.

                      Gruß
                      phpfan

                      Kommentar


                      • #12
                        Mir persönlich wäre es lieber, wenn PHP mindestens genauso streng zur Sache gehen würde, w.z.B C/C++.
                        das würde doch rein gar nichts bringen, ausser das im forum nur noch mehr fragen auftauchen würden.

                        wie:
                        was bedeutet diese Meldung?
                        read.php invalid conversion from `char' to `int'
                        wobei diese frage dann auch zum x mal gestellt werden würde.

                        php ist schon ne nette script sprache...

                        Kommentar


                        • #13
                          Zitat von phpfan
                          PHP ist keine hervorragende Sprache. Wenn das so wäre, würde sich nicht jede Pappnase darauf stürzen, der mit VB ein "Hello world"-Programm schreiben kann. Die Reglementierung sind einfach nicht streng genug und verleiten zu einer schlampigen Programmierung, wie man tagtäglich im Anfänger-Forum sieht. Mir persönlich wäre es lieber, wenn PHP mindestens genauso streng zur Sache gehen würde, w.z.B C/C++.

                          Gruß
                          phpfan
                          Nur weil eine Sprache schnell und einfach zu erlernen ist, ist das ja noch lange kein Grund dafür dass die Sprache keine hervorragende Sprache sein kann.
                          Dass PHP zum schlampigen programmieren verleitet würde ich sofort unterzeichnen, aber das macht C++ in ähnlicher weise.
                          Ich kann manche von euch verstehen, dass sie genervt sind. In einem C++ Forum würde man mit Fragen die hier im Anfänger Forum gestellt werden mit RAFB beantworten, und keine Hilfe bekommen (Was in den Fällen auch meist voll und ganz berechtigt (wenn auch nicht nett) ist)
                          Aber jeder fängt mal klein an, und gerade PHP ist zum klein-anfangen sehr gut geeignet, das mag für machne Forenmitglieder ein Nachteil sein, aber ich denke das begründet die erstaunlich weite Verbreitung von PHP.

                          Aber nun bitte wieder zurück zum Thema. Dass PHP zu einfach ist sollte man denke ich nicht als "Nachteil" anprangern (eher schon die genannte Typlosigkeit, und die Verleitung zum unsauberen Programmieren).

                          etwas anderes PHPfan: Deinem namen zu entnehmen programmierst du ja selbst php. Würdest du das von mir genannte Framework für eine gute Idee halten?

                          Kommentar


                          • #14
                            @"Clan":

                            Natürlich würde es "was bringen", wenn PHP nicht so niederschwellig wäre. Die Sprache wäre nicht annähernd so verbreitet und entsprechend würden nicht so viele Kids drüber stolpern.

                            Aber - natürlich sagt das nichts über die Qualität der Sparache an sich aus.

                            @"xardie":

                            Was soll es denn werden für ein Framework? Da gibt es ja schon unzählige Ansätze etc. von Sammlungen, wie PHP-PEAR über WACT, Ruby on Rails, Struts bis hin zu J2EE.

                            Basti

                            Kommentar


                            • #15
                              http://phpfriend.de/forum/ftopic55211-10.html#378538

                              Kommentar

                              Lädt...
                              X