Klassen in PHP?! Guter Stil oder Bremse?

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

  • Klassen in PHP?! Guter Stil oder Bremse?

    Was haltet ihr von Klassen?
    Braucht man sie?

    Sollte man Klassen verwenden wenn man keine braucht?
    Sind sie guter Coding Style?

    Meiner Meinung nach sollte man Klassen nur dann einsetzen wenn man sie wirklich braucht und nicht einfach nur weil sie "schöner" aussehen oder "bessere" Lesbarkeit haben (wobei ich bei beiden Argumenten meine Zweifel hab )

    Postet bitte eure Meinung

    Gruß
    Xerrez
    20
    Ja! Unbedingt
    0%
    10
    Nein! Nie und nimmer
    0%
    8
    Ist eigentlich egal.
    0%
    2

  • #2
    Du verwendest doch auch keine Axt, um ein Stück Butter zu zerschneiden, wenn es auch ein Messer tut

    Mal ganz davon abgesehen, dass es totale Resourcenverschwendung wäre...

    Kommentar


    • #3
      Jo schon.

      Nochwas zur entstehung des Themas:
      Ein Kollege und ich hatten eine heftige Diskussion über das Thema und sind auf keinen Nenner gekommen. Deswegen möchte ich gern mal von anderen Codern die Meinung wissen

      Gruß
      Xerrez

      Kommentar


      • #4
        ich verwende Klassen wo es geht ... aber manchmal macht es halt einfach keinen Sinn ... wir haben auf einer Website eine alias-Funktion für htmlentities geschrieben (htmlent), welche den Zeichenstring als utf8-kodiert behandelt (das erwartet normalerweise einen zweiten Parameter bei htmlentities) ... dafür eine Klasse Tools anzulegen, mit einer static-Function htmlent, wäre das Dümmste was ich in meinem Leben gesehen hätte ... aber für z.B. einen User

        PHP-Code:
        class user {
          private 
        $id;
          function 
        get_id() {
            return 
        $this->id;
          }

          function 
        login($username$password) {
            
        blabla;
          }

        hat das mMn schon mehr Sinn. Und irgendwann erreichen Projekte eine Größe, wo es dumme Funktionen einfach nicht mehr tun, z.B. schribbsel ich gerade an einem Wiki-System ... nur halt abgeschlackt und viel mehr auf den restlichen Code der Community abgestimmt. Wenn ich da kein OOP verwenden würde, ja dann gute Nacht ~_~

        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
          Und was hat er für Argumente...

          Mir fällt kein Arg. ein, welches seine These stützen würde.
          Man kann auch mit Funktionen und normalen Prozeduren sauber coden, dazu braucht man keine Klassen.

          Kommentar


          • #6
            Seine Argument sind halt das es einfach besser Aussieht und das ein 3. es besser und schneller lesen kann...

            (Ausgang war ein Script mit 1300+ Zeilen was nur aus Funktionen bestand)

            Kommentar


            • #7
              Wie gesagt es kommt immer auf den Umfang an und ob OOP dort Sinn macht. Grundsätzlich sollte man je nach Größe und Umfang entscheiden.

              Kommentar


              • #8
                statisches Agieren ist quasi nie gut
                [COLOR=royalblue]Ein großes DANKE an alle, die sich auf selbstlose Weise im Forum einbringen.[/COLOR]

                [COLOR=silver]btw: REAL PROGRAMMERs aren't afraid to use GOTOs![/COLOR]

                [color=indigo]Etwas ernster, aber auch nicht weiter tragisch, sieht die Situation bei Software-Patenten aus. Software-Patente sind eine amerikanische Erfindung und stehen auf dem selben Blatt wie genveränderte Babynahrung, die im Supermarkt nicht mehr als solche gekennzeichnet werden soll, um die Hersteller nicht gegenüber denen natürlicher Produkte zu diskriminieren ...[/color]
                (from here)

                Kommentar


                • #9
                  naja hauptsächlich verwende ich schon klassen. n paar "einzelkinder" gibts immer (bspw. classinit, die dann eben in ihrer functions.inc.php rumhängen. ansonsten bekomm ich eigentlich alles so in klassen unter, dass es sinn macht.
                  MfG
                  aim
                  Lies mich jetzt!
                  - OT-Tags-Liebhaber und BB-Code-Einrücker -

                  Kommentar


                  • #10
                    Hi

                    Original geschrieben von ghostgambler
                    ... wir haben auf einer Website eine alias-Funktion für htmlentities geschrieben (htmlent), welche den Zeichenstring als utf8-kodiert behandelt (das erwartet normalerweise einen zweiten Parameter bei htmlentities) ... dafür eine Klasse Tools anzulegen, mit einer static-Function htmlent, wäre das Dümmste was ich in meinem Leben gesehen hätte ...
                    Zumindest hätte die funktion einen namespace. Was ist daran schlecht ?

                    Original geschrieben von Xerres
                    Meiner Meinung nach sollte man Klassen nur dann einsetzen wenn man sie wirklich braucht und nicht einfach nur weil sie "schöner" aussehen oder "bessere" Lesbarkeit haben (wobei ich bei beiden Argumenten meine Zweifel hab )
                    Mit wievielen entwicklern arbeitest du so im team ?

                    Der wesentlich vorteil von OOP ist höhere abstraktion.
                    Irgendwer sagte mal (sinngemäß):
                    "Wenn du ein problem nicht prägnant lösen kannst, steige eine
                    abstraktionsstufe höher".

                    Das ist der kern. In den allermeisten fällen, vereinfachen sich probleme
                    durch höhere abstraktion. Das bedeuted weiterhin, dass die lösung
                    besser nachvollziehbar ist und die wahrscheinlichkeit von fehlern kleiner
                    wird. Was spricht also dagegen ?

                    Oder anders gefragt. Kannst du mal ein beispiel geben in dem klassen
                    völlig fehl am platz wären aber eine prozedur genau das richtige ?
                    (ich bezweifle nicht, das es sowetwas gibt, ich behaupte jedoch, dass
                    die domäne in der das der fall ist, auch kein anwendungsgebeit von php ist)

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

                    Kommentar


                    • #11
                      Es gibt sogar fälle wo 'ne Funktion fehl am Platz wäre ... z.B. Im "Hello World!" (das wäre overengineering) ... warum sollte also nicht auch 'nen Klasse fehl am Platz sein ...

                      In jedem Falle ist allerdings die Dogmatische Festlegung auf eine Vorgehensweise vollkommen daneben ... !
                      carpe noctem

                      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                      Kommentar


                      • #12
                        Original geschrieben von closure
                        Zumindest hätte die funktion einen namespace. Was ist daran schlecht ?
                        was für einen Sinn hat es, eine Funktion in einen Namespace zu packen, wo der gar nicht nötig ist?! ... sry, bei all meiner Liebe zu Klassen, das ist vollkommen idiotisch ~_~

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

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

                        Kommentar


                        • #13
                          Hi,

                          wenn du mit sicherheit sagen kannst, dass die funktion nicht mit namen
                          aus verwendeten 3rd party oder eigenen libs kollidiert und es die einzige
                          funktion bleibt, die in die entsprechende kategorie fällt, dann ist ein namespace
                          sinnlos.

                          Kommt bei mir allerdings selten vor.

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

                          Kommentar


                          • #14
                            Also ich als unerfahrener PHP Anfänger halte Klassen eigentlich immer für sinnvoll.... ich meine: Wenn es nur ein kleiner übersichtlicher code ist, wo sich eurer Meinung nach keine Klassen lohnen, dann braucht man auch nicht viele Klassen, dementsprechend werden sie auch kaum als Bremse zu bezeichnen sein ^^

                            Außerdem fällt das doch bei der heutigen Rechnergeschwindigkeit kaum auf... denke ich.

                            Also sind Klassen auch bei wenig code ein gutes mittel zur guten Lesbarkeit ^^
                            -Am Anfang war das Wort-

                            Ich habe fertig mit Abi ^^

                            Kommentar


                            • #15
                              Ich bin immer wieder erstaunt, dass Klassen jetzt als guter Code verwendet werden.
                              Es gibt unzählige andere Möglichkeiten Code gut lesbar, sinnvoll oder komprimiert, modular zu schreiben.

                              Zu deinem Hinweis, dass doch die Rechner eh immer schneller werden... ja warum wohl!? Richtig, damit mehr geleistet werden kann, ich wette, dass bei einem Server, der tausende Abfragen pro Sekunde erwartet das schon einen Unterschied macht (Obwohl dort Caching eingesetzt werden sollte...)

                              Kommentar

                              Lädt...
                              X