Was ist neu in GoLand 2018.2?

Hallo Habr!

GoLand 2018.2 kam letzte Woche heraus. In diesem Artikel werden wir darüber sprechen, was in der neuen Version erschienen ist.



Was ist kurz neu:

  • Unterstützung für Go-Module (früher bekannt als vgo);
  • Verbessertes Move- Refactoring und neue automatische Korrekturen;
  • Nachschub in den Familien der Postfix-Abschluss- und Absichtsaktionen ;
  • Der Debugger unterstützt jetzt Haltepunkte, die keine vollständige Programmunterbrechung erfordern, sowie das verzögerte Laden von Arrays, Slices und Wörterbüchern.

Darüber hinaus wurden viele Verbesserungen von der IntelliJ-Plattform erzielt: von Innovationen für Versionskontrollsysteme und Touch Bar-Unterstützung für das MacBook Pro bis zu den neuesten Innovationen aus der Welt der Front-End-Entwicklung.

Unterstützung für Go (vgo) Module


Im Februar kündigte das Go-Team eine Testversion des neuen Tools für das Abhängigkeitsmanagement an, und wir beschlossen sofort, an dessen Unterstützung zu arbeiten.
Mit GoLand können Sie Projekte eines neuen Typs ( Go-Modul ) erstellen und Abhängigkeiten mit einem Klick direkt im Code-Editor synchronisieren.



Weitere Informationen zur Unterstützung von Go-Modulen finden Sie hier ( Artikel in englischer Sprache ).

Refactoring verschieben


In einer früheren Version hat GoLand das Move- Refactoring eingeführt, mit dem jede Anzeige schnell in eine andere Datei innerhalb desselben Pakets verschoben werden kann. In dieser Version haben wir ihm beigebracht, wie man Zeichen zwischen Paketen verschiebt.

Um das gesamte Bild zu sehen, haben wir eine neue Oberfläche hinzugefügt, die die vom verschobenen Objekt abhängigen Elemente anzeigt. Exportieren und übertragen Sie diese Abhängigkeiten damit.



Schnelle Codekorrekturen


Es wurden neue automatische Korrekturen von Typfehlanpassungsfehlern angezeigt: In erwarteten Typ konvertieren und fehlende Methoden implementieren .

In erwarteten Typ konvertieren konvertiert den Wert gemäß den Anforderungen der Sprache in den erwarteten Typ:



Durch das Implementieren fehlender Methoden mit einem Klick werden fehlende Methoden hinzugefügt, wenn der erwartete Typ eine Schnittstelle ist:



Codegenerierung


Implementierungsmethoden können jetzt nicht nur Methoden von der Schnittstelle zu vorhandenen Typen hinzufügen, sondern auch einen neuen Typ mit der Implementierung von Schnittstellenmethoden erstellen:



Code-Bearbeitung


Mit der neuen Aktion " Punktimportalias hinzufügen" können Sie auf alle exportierten Namen verweisen, ohne einen Paketnamen zu verwenden. Durch die umgekehrte Aktion " Punktimportalias entfernen" werden diese Änderungen abgebrochen.

Das Refactoring für lokale Variablen ist jetzt über Alt + Enter verfügbar. Eine schnelle Aktion schreibt das Ergebnis der Ausführung von Funktionen und Methoden in eine neue lokale Variable.



Postfix-Vorlagen


Die neue .sort- Vorlage fügt Arrays und Slices eine Sortiermethode hinzu, die auf der Art der Elemente basiert. Wenn die Elemente von einem benutzerdefinierten Typ sind, wird die sort.Slice- Methode verwendet.

Zur Vereinfachung der Verwendung haben wir die Vorlagen .rre und .rrv zu einer neuen kombiniert - .rr . Sie kann sowohl für Ausdrücke als auch für Variablennamen aufgerufen werden.



Codestil


Nachdem wir die Empfehlungen für Go-Entwickler zum Design des Codes studiert hatten, fügten wir Hervorhebungen für Kommentare hinzu, die nicht mit einem Leerzeichen beginnen, und brachten der IDE bei, sie zu formatieren, wobei ein fehlendes Leerzeichen hinzugefügt wurde. Nach einer Weile wurde klar, dass einige Bibliotheken (zum Beispiel easyjson ) im Gegenteil ihre Abwesenheit benötigen!

Für Bibliotheken mit ähnlichen Anforderungen haben wir eine Ausnahmeliste für die Option Führenden Speicherplatz zu Kommentaren hinzufügen hinzugefügt. Es hilft, unnötige Leerzeichen zu vermeiden, es reicht aus, die erforderlichen Präfixe zu setzen. Hier enthalten: Einstellungen / Einstellungen | Editor | Codestil | Gehen Sie | Andere .



Debugger


In der neuen Version unterstützt der Debugger Haltepunkte, für die keine vollständige Programmunterbrechung erforderlich ist. Die Werte von Arrays, Slices und Wörterbüchern werden träge geladen, und Strukturen können jetzt ohne Einschränkungen für die Verschachtelungsebene erweitert werden.



Datei-Beobachter


Eine kleine, aber sehr angenehme Verbesserung wurde in File Watchers in dieser Version angezeigt . Früher war es erforderlich, File Watchers für jedes Projekt separat zu konfigurieren. Jetzt können die Einstellungen zwischen den Projekten wiederverwendet werden.



Versionskontrollsystem


Kurz zur Lösung von Zusammenführungskonflikten: Es ist leicht, einen Fehler zu machen, das Problem ist nicht leicht zu finden und schwer zu beheben. Wir haben uns entschlossen, diesen Prozess weniger schmerzhaft zu gestalten. Daher gruppiert das Versionskontrollsystem jetzt Dateien mit Zusammenführungskonflikten für jede Liste von Änderungen. Das verbesserte Dialogfeld " Mit Konflikten zusammengeführte Dateien " zeigt beim Ausführen von Pull , Merge oder Rebase Zweignamen an und gruppiert Dateien in Verzeichnissen.



Es gibt viele Verbesserungen für das Protokollfenster . Jetzt können Sie:

  • Öffnen Sie so viele Protokollfenster, wie Sie benötigen.
  • Entfernen Sie das Git-Tag aus dem Commit.
  • Commits nach ausgewählten Zweigen filtern;
  • Erkunden Sie das Diff-Vorschaufenster, ohne das Protokollfenster zu verlassen.
  • Überwachen Sie den Repository-Status mit der neuen Aktion " Repository bei Revision durchsuchen".



Zusätzlich zu den Änderungen für das Protokollfenster wurde VCS in mehrfacher Hinsicht verbessert.
In der neuen Version können Sie beispielsweise Änderungen mit einem Klick ohne das Dialogfeld " Push" festschreiben und übertragen:



Und verwalten Sie auch eine beliebige Anzahl von GitHub-Konten, ohne zwischen ihnen zu wechseln:



Benutzeroberfläche


Besitzer des MacBook Pro bestehen nicht: GoLand 2018.2 unterstützt Touch Bar. Alle verfügbaren Tools für das Touchpanel können an Ihre Aufgaben angepasst werden: Einstellungen | Aussehen & Verhalten | Menüs und Symbolleisten .



Eine weitere Neuigkeit für MacOS-Benutzer: Fenstertitel können jetzt abgedunkelt werden. Aktivieren Sie dazu die Option Dunkle Fensterüberschriften verwenden unter Einstellungen | Aussehen & Verhalten | Aussehen .



Symbole haben Farbe, Form und Stil geändert. Details finden Sie in diesem Beitrag ( auf Englisch ) von unserem Interface-Design-Team: Sie teilen mit, wie sie Entscheidungen getroffen haben und was sie in Zukunft vorhaben.

JavaScript / TypeScript


Traditionell sprechen wir ein wenig über Änderungen bei der Unterstützung von Front-End-Technologien. Hier sind einige der wichtigsten:

  • Unterstützung für TypeScript 2.9 und TypeScript 3.0;
  • Viele neue Absichtsaktionen : Schnittstelle implementieren , abgeleitete Klasse erstellen , Mitglieder einer Schnittstelle oder abstrakten Klasse implementieren , Fälle für 'switch' generieren und mit 'for..of' iterieren .
  • Jetzt können Sie den gesamten nicht verwendeten Code mit der neuen Codeabdeckungsfunktion finden.

Weitere Informationen zu diesen und anderen Verbesserungen finden Sie auf der Seite "Neuigkeiten" des WebStorm-Teams.

Das ist alles! Wie immer freuen wir uns über Ihre Meinung 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 möchte Sie daran erinnern, dass, wenn Sie bereits IntelliJ IDEA Ultimate verwenden, alle GoLand-Funktionen direkt dort verfügbar sind, Sie nur dieses Plugin installieren müssen.

Vielen Dank für Ihre Aufmerksamkeit!

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


All Articles