Wenn es notwendig ist, Klassen in PHP zu verwenden
Lesezeit: 3 Minuten
Aakash Chakravarthy
Ich bin ein WordPress-Plugin-Entwickler. Ich habe die Quelle vieler Plugins gesehen, und viele Plugins verwenden “Klassen” in ihnen und einige ohne Klassen.
Viele große codierte Plugins wie “wp-postratings” verwenden keine Klassen und einige kleine Plugins verwenden Klassen.
Bearbeiten: Da Klassen private, öffentliche und geschützte Zugriffsspezifizierer haben, fühle ich einen Vorgeschmack auf Sicherheit. Erhöht es die Sicherheit?
Benötigen andere Sprachen als PHP Klassen?
Ist die Verwendung von Klassen obligatorisch?
Ich brauche ein paar Vorschläge.
Es wird ein Tag in Ihrem Entwicklerleben kommen, an dem Sie etwas Komplexeres als Funktionen brauchen werden, dessen Name Klassen sein wird!
– Luca Filosofi
16. Juni 2010 um 14:29 Uhr
Nein, es ist weder zwingend noch erhöht es per se die Sicherheit. es ist nur ein anderen Stil der Programmierung.
Die meisten Programmierer würden zustimmen, dass die objektorientierte Programmierung (Klassen) viele Vorteile gegenüber der modularen Programmierung (Funktionen) hat. Aber das ist eher eine religiöse Debatte, auf die ich mich lieber nicht einlassen möchte 🙂
ähm, eigentlich nicht brauchen Klassen, um OO zu implementieren – es macht es einfach einfacher
– Symbohne
16. Juni 2010 um 15:41 Uhr
@symcbean: Ich dachte immer, dass Klassen ein grundlegender Bestandteil von OOP sind. Können Sie ein Beispiel für OOP ohne Klassen geben?
– Felix Klinge
16. Juni 2010 um 17:58 Uhr
@Felix – Sie können viele Aspekte von Klassen in einer Sprache wie C simulieren, indem Sie Strukturen und Funktionszeiger verwenden. Sie können die Vererbung bis zu einem gewissen Grad sogar simulieren, indem Sie Vereinigungen oder geschickte Ausrichtungen in Ihren Strukturen verwenden. Sie sehen auch Dinge, die OO in vielen C-APIs ähneln. Wie die Verwendung von Handles in der WIN32-API, wo Sie verschiedene Arten von Handles haben, Operationen, die nur mit bestimmten Typen funktionieren, und Operationen, die mit allen Arten von Handles funktionieren, usw.
– Eric Petroelje
16. Juni 2010 um 18:10 Uhr
@Felix – Eric hat bereits die Antwort gegeben, an die ich gedacht habe – aber vielleicht möchten Sie auch überlegen, wie Javascript funktioniert – es hat echte Objekte – aber keine Klassen.
– Symbohne
17. Juni 2010 um 9:03 Uhr
Sie sollten darüber lesen Objekt orientierte Programmierung. Es ist nicht obligatorisch, Klassen zu verwenden, aber es kann die Codeorganisation und Wartung Ihres Codes erleichtern.
Kürzlich sah ich ein Tutorial zur Entwicklung einer Web-App. Es verwendet Klassen für das Anmelde- und Registrierungssystem. Klassen erhöhen also die Sicherheit ?
– Aakash Chakravarthy
16. Juni 2010 um 15:06 Uhr
@Aakash Chakravarthy: Nein, die Sicherheit wird nicht erhöht. Aber sie machen es einfacher, den Überblick über Zustände und Gruppenfunktionen zu behalten. Zum Beispiel ist es viel einfacher, a zu haben User Klasse, die alle Informationen des aktuellen Benutzers enthält, um viele globale Variablen zu verwenden.
– Felix Klinge
16. Juni 2010 um 15:13 Uhr
Die Verwendung von Klassen (oder nicht) hat nichts mit Sicherheit zu tun, sondern alles mit der Organisation Ihres Programms in Blöcken von wiederverwendbarem und leicht verständlichem Code.
– Jean Hominal
16. Juni 2010 um 15:13 Uhr
Es ist offensichtlich keine technische Anforderung, aber wenn die Codestruktur Ihres Plugins in 2 oder mehr Klassen beschrieben werden kann, würde ich sagen, gehen Sie OO. Es hat nichts mit Sicherheit zu tun, aber es könnte Ihren Code sauberer und einfacher zu warten machen.
Wie Eric bereits sagte, ist es weder zwingend erforderlich, noch erhöht es per se die Sicherheit.
Ein großer Vorteil ist jedoch, dass es das Präfixieren vereinfacht und das Risiko verringert, versehentlich einen Fehler durch die Neudeklaration einer Funktion zu verursachen.
Ich benutze immer OOP, wenn ich kann.
Sofern Sie keinen triftigen Grund dagegen haben, empfehle ich, immer Klassen zu verwenden. Es gibt keinen wirklichen Nachteil, sie zu verwenden.
Martin
Die Verwendung von Klassen ist nicht obligatorisch, sondern hilft Ihnen und anderen Entwicklern, die Ihren Code ändern, um ihn besser zu verstehen.
Meiner Meinung nach sollten Sie Klassen verwenden, wann immer es notwendig ist.
Russell Dias
Sie____ nicht haben Code objektorientiert zu schreiben. Sie können auch prozeduralen Code in PHP schreiben. Viele Projekte machen das, Drupal, wenn ich mich nicht irre, ist eines davon.
Am Ende des Tages. Verwenden Sie das Programmierparadigma, das für die jeweilige Aufgabe am besten geeignet ist, sei es prozedural, funktional oder OOP.
13950900cookie-checkWenn es notwendig ist, Klassen in PHP zu verwendenyes
Es wird ein Tag in Ihrem Entwicklerleben kommen, an dem Sie etwas Komplexeres als Funktionen brauchen werden, dessen Name Klassen sein wird!
– Luca Filosofi
16. Juni 2010 um 14:29 Uhr