PhpStorm Parameter Name Hints: Optimierungssache

Von Franziska Hahn
7 Kommentare
Parameter PhpStorm

Mit der Version 2017.1 kam eine auffällige Neuerung zu Jetbrains PhpStorm hinzu: die Parameter Name Hints im Editor. Da das Update unter Linux mittlerweile per Knopfdruck möglich ist, habe ich es ziemlich früh installiert und (wie viele Bekannte auch) spontan kein großes Gefallen daran gefunden.

Vor- und Nachteile der Parameter Name Hints

Mein erster Eindruck: Das stört den Lesefluss, wenn ich meinen Code noch einmal überfliege.

Mein nächster Eindruck kam in einem IT-Meeting zustande: Manchmal ist es doch recht praktisch, wenn man fremden Code lesen möchte. Vor allem, wenn man die Maus nicht selbst in der Hand hat und somit keine Hover-Hinweise hat.

Und auch wenn man Hover-Hinweise selbst ansteuern kann, so hat man immer einen kurzen Moment, in dem man den Lesefluss unterbrechen muss.

Vorteil #1: SQL-Dateien

Die IDE erleichtert das Lesen von INSERT-Queries. Vor allem bei Tabellen mit vielen Spalten oder unterschiedlich langem Inhalt empfinde ich das als sehr praktisch:

Parameter Name Hinting bei SQL-Dateien in PHPStorm

Nachteil #1: Anzeige der Zeilenlänge

Wenn ihr auf eine maximale Zeilenlänge achtet und dafür einen Hilfsmarker (vertikale Linie) aktiviert habt, ist dieser leider in vielen Fällen obsolet geworden:

Die erste Zeile sieht nur so aus, als wäre sie zu lang, die zweite Zeile ist wirklich zu lang.

Die erste Zeile sieht nur so aus, als wäre sie zu lang, die zweite Zeile ist wirklich zu lang.

Diese Liste werde ich gerne im Laufe der Zeit und auch anhand eurer Kommentare erweitern!

Einstellungen

Jetbrains hat zum Glück die Möglichkeit eingebaut, die Hinweise zu formatieren, auszublenden und/oder zu konfigurieren.

In diesem Artikel soll die Konfiguration besprochen werden.

Dieses Fenster findet ihr unter File > Settings > Editor > General > Appearance

 

Dort kann man mit einem Klick auf den Button „Configure“ eine Liste pro Programmiersprache editieren. Da ich hauptsächlich mit Symfony arbeite, zeige ich euch im Folgenden ein paar meiner PHP-Einstellungen.

PhpStorm Parameter Name Hints

Diese Liste zu optimieren, bedarf natürlich eines gewissen Maßes an Selbstreflektion. Jetbrains hat hier schon eine recht generische Liste vorgegeben. Alle weiteren Einträge könnt ihr danach ausgerichtet anlegen, bei welchen Parametern und Methoden ihr sicher keine Hilfe mehr benötigt.

QueryBuilder

Als Symfony-Entwickler nutzt man häufig Methoden aus dem Doctrine-Umfeld. Wie man am Screenshot oben sieht, sind Methoden mit den Parametern (key, value) bereits ausgeschlossen.

Trotzdem werden diese Parameter bei dem Methoden-Aufruf von setParameter noch angezeigt:

Nullable Values müssen in der Konfiguration berücksichtigt werden. Beispiel: setParameter() im QueryBuilder

PhpStorm Parameter Name Hints

Das liegt daran, dass setParameter noch einen weiteren (nullable) Parameter akzeptiert. Also habe ich diesen Eintrag der Konfiguration hinzugefügt:

(key, value, *)

 

Außerdem gibt es im QueryBuilder noch die Methode select() mit dem Parameter $select. Hier wäre es wirklich praktisch, wenn es die Möglichkeit gäbe, Methoden auszuschließen, deren einziger Parameter genauso heißt wie die Methode. Gibt es aber (noch?) nicht. Deshalb habe ich auch alle Methoden ausgeschlossen, die ausschließlich $select erwarten:

(select)

Für QueryBuilder-Methoden, wie eq() und neq() habe ich letztlich noch diese Zeile hinzugefügt:

(x,y)

PHP-Root

Der Hinweis „format“ für die DateTime-Methode format() fällt in die gleiche Kategorie wie select() weiter oben:

(format)

 

Diese Liste möchte ich gerne erweitern!

Ich werde diesen Artikel nach und nach erweitern. Genau wie meine Konfiguration auch.

Ich übernehme auch gerne eure Ideen und Hinweise:

Welche Zeilen habt ihr zur Konfiguration hinzugefügt – oder habt ihr das neue Feature sogar gänzlich deaktiviert? Schreibt uns eure Meinung per Kommentarfunktion hier im Blog oder bei Twitter!

7 Kommentare

Tutorials und Top Posts

7 Kommentare

Roland Golla 6. April 2017 - 12:17

Das ist mir auch schon aufgefallen. Dazu habe ich auch ein Ticket bei Jetbrains eingereicht
https://youtrack.jetbrains.com/issue/WI-35747
Wenn die Variable so heißt, wie der Parameter wird es auch nicht angezeigt. Das macht echte Probleme bei der Formatierung.

Reply
Maik Tizziani 27. Mai 2017 - 9:01

Leider kann man den Kommentar von Franziska nicht lesen.
Ich arbeite derzeit hauptsächlich mit TypeScript und dort ist es ganz unterschiedlich ob die NameHints angezeigt werden. Solange ich in selbst definierten Klassen und Funktionen arbeite funktioniert es wunderbar, aber wehe ich referenzieren auf Bibliotheken wie JQuery per .d.ts oder nutze gar Vanilla JS. Dann ist keine Chance mehr auf diese Funktionalität.
Ich hoffe das JetBrains das ganze weiter verfolgt und das ganze vielleicht noch ein wenig verfeinert.

Reply
Codeception Tutorial - Automatisierte Tests für ein besseres Leben 25. Juli 2018 - 11:28

[…] im wesentlichen schneller zu werden und auch Wert auf einen gewissen Stil zu legen. Das fängt mit Shortcuts in PHPStorm an und setzt sich über den generellen Einsatz von Tools fort. Zum Beispiel als Terminal oh-my-zsh […]

Reply
Teilnehmerrekord – Hall of Fame Event begeistert PHP-Community 7. Dezember 2018 - 11:49

[…] eigentlichen Inhalt werden aber auch jede Menge Soft Skills vermittelt. Der richtige Einsatz der PhpStorm IDE – das ist der Editor mit dem Programmcode geschrieben wird – das aufspüren und beheben von […]

Reply
Codeception Tests finden selber Bugs – PHP Training lohnt sich direkt 20. Januar 2019 - 15:49

[…] dem Workshop sehr zufrieden. Es gab noch ordentliche Best-Practice-Lösungen im Tool-Handling mit PhpStorm und dem oh-my-zsh […]

Reply
Visual Studio Code – Live Sharing Feature – PhpStorm Killer? 25. Januar 2019 - 13:13

[…] Studio Code. Aus gutem Grund, denn neben der Performance bringt das Microsoft-Produkt einen echten PhpStorm Killer mit – das Live Sharing Feature. JetBrains bekommt es auch noch nicht hin hier zu liefern […]

Reply
Hall of Fame #NCAEvent – PHP-Training in der Community 3. Februar 2019 - 1:59

[…] Coding zeigt, wie es richtig geht. Dabei geht es gar nicht mal nur um das konkrete Topic. Wie geht man mit der IDE um, wie findet man einen aktuellen Fehler und vor allem wie machen andere das. Gemeinsam mit der […]

Reply

Gib uns Feedback

Diese Seite benutzt Cookies. Ein Akzeptieren hilft uns die Seite zu verbessern. Ok Mehr dazu