PHP
Webagentur » Digitale Nachrichten » PHP Best Practice: Geben Sie Parameter ein

PHP Best Practice: Geben Sie Parameter ein

Es gibt die Praktiken, die wir in der Schule lernen, die wir aus Faulheit übernehmen, die wir aus Gewohnheit übernehmen, sei es durch Anschauen oder durch systematisches Kopieren und Einfügen. Mit der Zeit und Erfahrung ist klar, dass wir nach immer klareren Methoden und Syntaxen suchen. Trotz der Trends, die sich um jede Sprache unterscheiden, können wir oft durch Lesen von Code feststellen, welcher aus unserem Team eine solche Syntax hat .

PHP, eine freie Syntax… zu frei?

Ich selbst habe mehrere Gewohnheiten, die es mir ermöglichen, meinen Code regelmäßig zu erstellen. Dies, um mich leicht zurechtzufinden, schnell zu arbeiten, aber auch um meinen Kollegen das Debuggen und das Lesen meines Codes zu erleichtern.

Geben Sie seine Parameter ein, wofür? Und warum ist das eine gute Praxis?

In PHP ist die Syntax sehr frei. Ich meine sehr frei damit, dass die Sprache nicht sehr wortreich ist. Ohne zum Beispiel ein Befürworter von Sprachen wie Java zu sein, denke ich, dass das Eingeben ihrer Parameter uns bei unserer Arbeit nur helfen kann.

Warum Zeit mit dem Schreiben des Datentyps verschwenden?
In der Tat, aber vergleichen wir gleich die Vor- und Nachteile.

In den Nachteilen, ohne schlechte Zeiten zu sein, wird es mir schwer fallen, ein anderes Argument als das, das ich oben geschrieben habe, anzuführen.

Bei den Profis könnte ich eine kleine Liste anführen:

  1. Es hilft mir, meinen Code zu erstellen. In meinem Prototyp (Deklaration meiner Funktion) weiß ich, dass das und das Argument ein a sein mussray ou int.
  2. Dadurch kann ich schneller debuggen. Wenn Sie erklärt haben, dass Sie ein Argument vom Typ möchten Mitglied In Ihrer Methode erwartet PHP eine Benutzerinstanz. Oder versuchen Sie, ein a zu gebenray oder ein anderer als der festgelegte Typ wird PHP sofort stoppen. Zugegeben, der Fehler kann ziemlich "hart" sein, aber der Rest Ihrer Entwicklung wird wahrscheinlich nicht fehlschlagen.
  3. Meine Kollegen lesen meinen Code gerne wie ein Buch. In der Tat, wenn wir wissen, dass die Methode setItem(…) ein Argument vom Typ akzeptiert foo, es hilft. NEIN ?
    1
    2
    Funktion setItem($Artikel);
    Funktion setItem(Foo $item);

Zugegeben, diese Liste enthält nur 3 Punkte, aber unsere Arbeit verpflichtet uns, immer auf dem Kriegspfad zu sein und immer neue Wege zu gehen, ich rate Ihnen, es selbst zu versuchen und zu sehen.

Ein angehaltenes Problem mit dem Typ gemischt

Eine Schwäche muss ich allerdings zugeben, der Typ gemischt. Schrecklicher Typ und verboten werden. Für diejenigen, die in C/C++ codiert haben, ist es so, als würde man einen Instanzzeiger mit einem (void *) deklarieren.

Ich rate Ihnen, diesen Typ so weit wie möglich nicht zu verwenden und seine Verwendung einzuschränken. Ein Beispiel ?
Die Methode setPoireau(mixed $poireau) nimmt Porree als Parameter, aber da sie nicht typisiert ist, kann man ihr auch ein Babysiegel geben… Problematisch.

Wenn Sie Lauch erzwingen wollten, wissen Sie, was Sie tun müssen, und geben wir zu, dass Sie einen verdrehten Verstand haben und Gemüse geben möchten, lade ich Sie ein, eine Schnittstelle (oder eine Klassenzusammenfassung) zu verwenden ) und definieren Sie Ihre Methode so.

1
Funktion setLauch(I Gemüse $Lauch);

Ich stimme zu, dass dieses Beispiel vielleicht nicht das beste ist, aber es hat den Vorteil, dass es klar ist.

Zusammenfassung

Die Typisierung ist nicht verpflichtend, steht aber jedem zur Verfügung, der übersichtlich und sauber arbeiten möchte. Ich empfehle es Ihnen dringend.

Vielleicht haben wir eines Tages das Recht, die Rückkehr einer Methode zu tippen, die uns bei unserer Suche nach immer besserer Semantik hilft.

★ ★ ★ ★ ★