Entwicklungsumgebungen: JetBrains aktualisiert GoLand und PhpStorm

Die Go-IDE kann Anwendungen direkt auf Remote-Systemen ausführen, und PhpStorm bietet einen lokalen PHP-Interpreter für eine integrierte Vorschau.

Lesezeit: 2 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen
Von
  • Rainald Menge-Sonnentag

JetBrains ergänzt den Reigen der auf Version 2021.1 aktualisierten IDEs mit der Veröffentlichung von GoLand und PhpStorm. Letzteres bringt eine integrierte Vorschau für PHP- und HTML-Dateien im Editor und eine flexible Anpassung der PHP-Version mit. GoLand kennt die Neuerungen der jüngsten Version von Googles Programmiersprache und kann Anwendungen direkt auf Zielsystemen ausführen.

Beide Entwicklungsumgebungen bringen zudem ebenso wie IntelliJ IDEA, PyCharm, CLion und RubyMine das Plug-in Code With Me mit, das JetBrains im September 2020 veröffentlicht hat und das auf Pair und Swarm Programming in verteilten Teams zielt. Es ermöglicht Video- und Sprachanrufe aus der Entwicklungsumgebung heraus sowohl zwischen zwei Teilnehmern als auch für komplette Teams. Parallel dazu können die Teammitglieder gemeinsam am Code arbeiten.

Entwicklerinnen und -Entwickler können in PhpStorm neuerdings die PHP-Version für ihr Projekt über einen Klick auf die Statusleiste anpassen, ohne die Konfiguration in composer.json zu ändern. Auf die Weise können sie beispielsweise testen, ob für PHP 7.4 verfasster Code kompatibel zur PHP 8 ist. Die Einstellungen für die Programmiersprache finden sich neuerdings auf der oberen Ebene der Konfiguration unter Settings / Preferences | PHP.

Die Sprachversion lässt sich unabhängig von der in composer.json angegebenen anpassen.

(Bild: JetBrains)

Die IDE kann ebenso wie PyCharm, RubyMine und IntelliJ IDEA eine Vorschau von HTML-Dateien direkt im Editor anzeigen. Zusätzlich bringt sie einen lokalen PHP-Interpreter mit, um PHP-Inhalte in die Vorschau einzubinden. Der Interpreter muss lokal vorhanden sein; das Zusammenspiel mit Remote-Interpretern beispielsweise in Docker-Containern funktioniert zumindest im aktuellen Release nicht.

Außerdem bringt PhpStorm insgesamt 30 neue Inspektionen und Quick-Fixes mit. Unter anderem kann die IDE boolesche Ausdrücke vereinfachen und beispielsweise !true mit false ersetzen. Sie warnt zudem, wenn strenge Gleichheitsvergleiche über === aufgrund unterschiedlicher Typen immer false ergeben.

Darüber hinaus erkennt und vereinfacht PhpStorm if-Blöcke, die aufgrund desselben Inhalts redundant sind. Schließlich kann es isset-Anweisungen durch den Coalesce-Operator ?? ersetzen.

Das auf Googles Programmiersprache Go ausgelegte GoLand kann im aktuellen Release ähnlich wie IntelliJ IDEA Quellcode direkt für ein Remote-System kompilieren und dort starten. Derzeit funktioniert die Remote-Ausführung mit Docker, SSH und WSL 2 (Windows Subsystem für Linux).

Die Entwicklungsumgebung kennt zudem die Neuerungen der im Februar veröffentlichten Version 1.16 der Programmiersprache. Unter anderem bietet sie für die statische Einbindung von Dateien beziehungsweise Dateibäumen über //go:embed Syntaxhervorhebung, Autovervollständigung und Navigation von den Referenzen innerhalb der Direktive zu den zugehörigen Dateien und Ordnern im Projekt. Auch das Rename-Refactoring funktioniert für eingebettete Inhalte, und die Codeinspektion erkennt fehlerhafte Typzuweisungen für eingebundene Variablen.

Neu ist zudem ein Assistent, der durch einfaches Kopieren des Inhalts von JSON-Dateien ein passendes struct mit Feldern und Tags erstellt. Die IDE kann sowohl neue Structs erstellen als leere mit Inhalten füllen.

Außerdem bietet GoLand neue Quick-Fixes zur Fehlerbehandlung. MIt Handle error erstellt die IDE einen Wrapper mit einem Test auf if error not nil, um unbehandelte Fehler zu veremeiden. Das Erstellen einer Closure für das Error-Handling ist neuerdings auch für defer und go verfügbar.

Für defer lässt sich neuerdings ein Wrapper zur Fehlerbehandlung als Closure erstellen.

(Bild: JetBrains)

Außerdem erstellt der Editor nun auf Wunsch in einem Rutsch mehrere Getter und Setter für die Inhalte eines struct. Schließlich generiert der Quck-Fix Create Type für nicht existierende Typen sowohl den zugehörigen Typ als auch die benötigten Felder.

Weitere Neuerungen in den 2021-1-Releases der Entwicklungsumgebungen lassen sich den Blogbeiträgen zu PhpStorm und GoLand entnehmen.

(rme)