Was ist neu in GoLand 2018.3?

Hallo Habr! Eine neue Version von GoLand 2018.3 wurde letzte Woche veröffentlicht.




In diesem Update finden Sie viele Verbesserungen zum Debuggen und Testen. Hierbei handelt es sich um Debugging-Anwendungen auf der Google App Engine-Plattform, dem Testify-Framework, der Analyse von Speicherabbildern und Mozilla rr.


Es gibt ein neues Refactoring der Signatur ändern , Codeprüfung und automatische Vervollständigung für Funktionen.


Darüber hinaus haben wir die Unterstützung für Diagramme hinzugefügt, das Umbenennen und Inline- Refactoring verbessert, mit Go-Vorlagen ( Text / HTML ) und dem Versionskontrollsystem für Git-, Docker- und Kubernetes-Plugins gearbeitet und vieles mehr.


Signatur-Refactoring ändern


Das Refactoring von Signaturen ändern ändert die Signatur von Funktionen und Methoden. Es ist hilfreich, einen neuen Namen festzulegen oder Parameter zu verschieben, umzubenennen, hinzuzufügen oder zu entfernen.


Wenn Sie die Methodensignatur ändern, bietet GoLand an, die Implementierung zu aktualisieren.


Sehen Sie sich vor dem Anwenden von Refactoring an, was im Vorschaufenster passiert.


Im Bedienfeld wird eine Liste aller Dateien und Objekte angezeigt, auf die Refactoring angewendet wird. Wenn Sie weitere Details benötigen, können Sie im Bedienfeld zu einem beliebigen veränderlichen Symbol im Projekt wechseln. Wenn das Ergebnis nicht den Erwartungen entspricht, können die Änderungen rückgängig gemacht werden.




Umbenennen und Inline-Refactoring


Das Umbenennen warnt jetzt vor möglichen Konflikten infolge des Umbenennens. Wir haben einen Dialog hinzugefügt, der über das Problem berichtet und bietet, eine Auswahl zu treffen: Ignorieren Sie den Konflikt, prüfen Sie das Refactoring oder brechen Sie es ab.




Das Ergebnis der Anwendung von Inline- Refactoring ist jetzt sofort sichtbar: GoLand hebt den geänderten Code hervor.




Debuggen einer Google App Engine-Anwendung


In der neuen Version können Sie mit dem Debugger Anwendungen auf der Google App Engine-Plattform lokal ausführen und debuggen.


Wir haben auch eine neue Projektvorlage hinzugefügt - App Engine . Es enthält app.yaml mit grundlegenden Konfigurationseinstellungen und eine main.go Datei mit einem Anforderungshandler.




Unterstützung für die Speicherauszugsanalyse


Manchmal geben Standard-Debugging-Tools zu bestimmten Zeitpunkten der Ausführung kein vollständiges Bild davon, was mit dem Programm geschieht. In diesem Fall helfen Speicherabbilder.


Um mit der Analyse eines Speicherauszugs in GoLand zu beginnen, wählen Sie im Menü Ausführen die Option Open Core Dump .


GOTRACEBACK=crash in das Feld Umgebung der Konfiguration Ausführen ein , um automatisch GOTRACEBACK=crash zu erstellen.


Sie können nur unter Linux Speicherabbilder erstellen, diese jedoch unter MacOS und Windows analysieren.




Bezeugen Sie den Support


GoLand 2018.3 unterstützt das Testify-Framework . Führen Sie Testsuiten und Methoden wie normale Testfunktionen direkt aus dem Editor aus.


Vergleichen Sie im Fenster "Vergleichsfehler" den tatsächlichen und den erwarteten Wert, wenn der Test fehlschlägt.




Code-Inspektionen


Es wurden zwei neue Code-Inspektionen angezeigt : Nicht behandelter Fehler und nicht erreichbarer Code.


Unhandled Error warnt vor Funktionen und Methoden, die einen Fehler zurückgeben. Es gibt jedoch keine Überprüfungen, um diesen Fehler zu behandeln.




Nicht erreichbarer Code identifiziert Codeteile, die niemals ausgeführt werden.




Darüber hinaus kann die Funktionsaufrufprüfung, mit der überprüft wird, ob ein Ausdruck in einen Funktions- oder einen Methodenaufruf konvertiert werden soll, Fehler jetzt automatisch mithilfe des Ausdrucks "Aufruf beenden" korrigieren.




Automatische Vervollständigung


GoLand 2018.3 führte eine neue Art der automatischen Vervollständigung von Funktionen ein. Stellen Sie sich vor, Sie sind neu in der Golang-Welt und müssen die Linie teilen. Sie wissen, dass es dafür eine Funktion geben muss, und höchstwahrscheinlich heißt sie " split ". Diese Funktion sollte eine Zeichenfolge als erstes Argument verwenden, aber Sie kennen den genauen Namen der Funktion und ihres Pakets nicht. Eine neue Art der automatischen Vervollständigung erleichtert das Auffinden solcher Funktionen.


Rufen Sie Basic Basic zweimal auf (Strg + Leertaste + Leertaste), um alle verfügbaren Abschlussoptionen anzuzeigen.




Absichtsaktionen


Das Argument zum Hinzufügen einer Formatzeichenfolge generiert einen Formatbezeichner für den angegebenen Ausdruck, fügt den Bezeichner in die Formatzeichenfolge ein und übergibt den Ausdruck als Bezeichnerargument.




Generate Constructor erstellt eine spezielle Funktion zum Initialisieren von Strukturen.




Mit Getter / Setter generieren können Sie jetzt die Parameter der generierten Funktion bearbeiten.




Generate Constructor , Generate Getter / Setter und Generate Getter und Setter sind jetzt über das Menü Generate verfügbar.


Debugger


Der Dialog zwischen Ausdruck auswerten und dem Bedienfeld „ Beobachter“ verfügt jetzt über eine automatische Vervollständigung, Inspektionen und eine automatische Fehlerkorrektur.




Go Vorlagen ( HTML / Vorlage )


Go-Vorlagen ( HTML / Vorlage ) funktionieren mit Code-Vervollständigung und Umbenennung . Jetzt können Sie von jedem Zeichen zu seinem Verwendungsort wechseln, und die Formatierung wurde verbessert.




Mozilla rr


Wir haben dem Linux-Debugger rr-Unterstützung von Mozilla hinzugefügt. Nehmen Sie das Programm mit nur zwei Tasten auf und spielen Sie es ab. Um mit dem Debuggen zu beginnen, müssen Sie Mozilla rr installieren.


Ansonsten funktioniert alles wie im Standard-Debugger, bis auf die spezielle Rewind- Schaltfläche für Mozilla rr. Es startet das Programm zurück zum vorherigen Haltepunkt.




Diagramme


Wir haben Diagrammunterstützung für die Visualisierung hinzugefügt:


  • Abhängigkeiten innerhalb von Go-Modulprojekten;
  • Beziehungen zwischen importierten und exportierten Modulen in JavaScript- und TypeScript-Projekten;
  • Beziehungen zwischen Tabellen in Datenbanken und SQL.



Suche und Navigation


Die Dialogfelder In Pfad suchen und In Pfad ersetzen funktionieren jetzt mit mehrzeiligen Codefragmenten.




Das Suchfeld " Überall suchen" ist schneller und kombiniert die Aktionen " Gehe zu Typ" , " Gehe zu Datei" , " Gehe zu Symbol" und " Suchen" . Verwenden Sie die Tabulatortaste, um zwischen den Registerkarten zu wechseln.




Verbesserungen des Code-Editors


Neue Symbole im Editor zeigen Ihnen nicht nur an, welche Methoden neu definiert wurden, sondern helfen Ihnen auch, mit einem Klick von einer solchen Methode zu einer anderen zu wechseln.




Complete Current Statement fügt automatisch ein Komma in zusammengesetzte Literale (Strukturen, Wörterbücher usw.) ein und platziert den Cursor an der Position der nächsten Anweisung.




In GoLand 2018.3 können Sie eine Reihe von Dateien definieren, für die die Aktionen " Code neu formatieren", " Importe optimieren" und "Neu anordnen" nicht gelten .




Die IDE unterstützt mehrzeilige TODO-Kommentare für Dateien in Go, JavaScript, TypeScript, CSS und SCSS.




Versionskontrollsystem


Die Integration mit Git zeigt jetzt Änderungsprüfungsanforderungen für das Repository in einem neuen Fenster an - GitHub Pull Requests - und unterstützt auch Git-Submodule.




Verfügbarkeit


Wir haben ein neues kontrastreiches Thema hinzugefügt und die Unterstützung für Bildschirmleser verbessert.




Docker


Das Docker-Plugin unterstützt CLI-Argumente in Ausführungskonfigurationen . Die folgenden Argumente können im neuen Build- Feld der Dockerfiles- Startkonfiguration verwendet werden: cache-from, cpu-shares, cpuset-cpus, force-rm, label, memory, memory-swap, shm-size, no-cache, pull, quiet, rm.




Kubernetes Plugin


Code-Vervollständigung, Refactoring umbenennen , Code-Inspektionen und Schnellkorrekturen funktionieren in Helm-Vorlagen.




Andere Änderungen


  • Die Aktion Anhängen befindet sich jetzt im Menü Projekt öffnen , mit dem Sie direkt beim Öffnen eines neuen Projekts ein Verzeichnis hinzufügen können.
  • Jetzt können Sie das Projekt öffnen, indem Sie es in das Begrüßungsfenster ziehen.
  • Der Aktivitätsmonitor zeigt an, wie viel Prozessorressourcen verschiedene Subsysteme und Plugins verbrauchen: Hilfe | Aktivitätsmonitor.
  • Das Finden und Aktualisieren von Plugins in der IDE ist bequemer geworden. Die Plugins-Seite unterstützt die Suche nach Tags und das Sortieren der Ergebnisse nach Download, Name, Bewertung, empfohlen oder aktualisiert.
  • Das Indizieren von Projekten ist viel schneller.

Das ist alles! Wie immer freuen wir uns über Ihre Meinung: Schreiben Sie uns hier in den Kommentaren, auf Twitter oder im Bug Tracker :)


Sie können das Update auf der Download- Seite oder über die Toolbox-App herunterladen .


Nur für den Fall, ich erinnere Sie daran, dass, wenn Sie IntelliJ IDEA Ultimate bereits verwenden, alle Funktionen von GoLand genau dort verfügbar sind: Installieren Sie einfach dieses Plugin .


Vielen Dank für Ihre Aufmerksamkeit!

Source: https://habr.com/ru/post/de431668/


All Articles