JavaRush /Java-Blog /Random-DE /IntelliJ IDEA 2019.1: Was ist neu in unserer Lieblings-ID...

IntelliJ IDEA 2019.1: Was ist neu in unserer Lieblings-IDE?

Veröffentlicht in der Gruppe Random-DE
Erst kürzlich wurde IntelliJ IDEA, eine integrierte Entwicklungsumgebung, die von Fachleuten (darunter Entwicklern und Absolventen von JavaRush) und zukünftigen Programmierern (insbesondere fast allen JavaRush-Studenten) verwendet wird, aktualisiert. In diesem Artikel beschreiben wir kurz die Neuerungen in IDEA, die Java-Entwickler betreffen.

Unterstützung für die Java 12-Vorschaufunktion – Switch Expressions ( JEP 325 ) und Switch Duplikaterkennung

Die zwölfte Version der Java-Sprache wurde im März veröffentlicht und eine der interessanten Änderungen darin ist eine neue Ausdrucksform mit dem Operator switch. Dieser Operator in seiner klassischen Form hat eine etwas umständliche Syntax, die zu ständigen Fehlern, Schwierigkeiten beim Debuggen und wohlverdienter Abneigung seitens der Entwickler führt. In JDK 12 switchbeschlossen sie, es zu rehabilitieren und seine Syntax zu vereinfachen. Aus irgendeinem Grund, der dem Laien unbekannt ist, war die neue Funktion jedoch nur in Vorschauform in Java 12 enthalten (das bedeutet, dass sie auch nach der Installation von JDK 12 manuell „verbunden“ werden muss). Die aktualisierte IDEA hat gelernt, vollständig mit allen Arten von Bedienern zusammenzuarbeiten switch. Die IDE hat auch gelernt, doppelte Zweige zu erkennen switchund sie durch eine schnelle Lösung zusammenzuführen.

Einzelheiten zu den Neuerungen in JDK12 finden Sie im Artikel „ Java 12 ist bereits da: Was ist neu?“

Refactoring: Erweiterung der Funktion zum Extrahieren von Variablen

IntelliJ IDEA kann Zeichenfolgenliterale und ausführbaren Code neu organisieren. Wenn Sie also eine Variable ändern müssen, wählen Sie sie einfach aus und wählen Sie die Option „Variable extrahieren“ . Anschließend wird sie im gesamten Code ersetzt. Jetzt bewahrt die Funktion die Semantik der zu ändernden Ausdrücke noch besser. Das Framework kann eine Variable sogar aus einem Feldinitialisierer extrahieren, und es ist auch möglich, dass die extrahierte Variable automatisch einen ternären Operator in ein „Wenn“ umwandelt, wenn die Bedingung wichtig ist (eine Bedingung gilt als wichtig, wenn sie eine hat). Nullprüfung oder eine „instanceof“-Prüfung).

Genauere Hervorhebung von Bedingungen in ternären Ausdrücken

IntelliJ IDEA 2019.1 bietet eine genauere Hervorhebung fragwürdiger Stellen in ternären Ausdrücken. Jetzt wird nur die Bedingung hervorgehoben null, in der der Wert verletzt wurde, während zuvor der gesamte ternäre Ausdruck hervorgehoben wurde, auch wenn die Verletzung nur in einem Zweig erfolgte. Dank dieser neuen Funktion ist die Hervorhebung von -Ausdrücken jetzt genauer switch.

Verbesserte Analyse mathematischer Operationen

Die Datenflussanalyse kann die Ergebnisse mathematischer Operationen überwachen und nutzt diese Informationen, um den Entwickler auf Bedingungen aufmerksam zu machen, die immer entweder wahr oder falsch sind. Die Autoren von IDEA haben die Analyse vieler mathematischer Operationen verbessert, darunter Multiplikation, Rest und bitweise Operationen.

Verbesserung der @Contract-Annotation

Die Annotation @Contract wird verwendet, um den Vertrag zu definieren, dem eine Methode entsprechen muss. Dadurch kann die IDE Probleme in Methoden finden, die annotierte Methoden aufrufen. @Contract hat zwei Attribute – valueund pure. Das Attribut valueenthält Klauseln, die die Ursache-Wirkungs-Beziehung zwischen den Argumenten und dem Rückgabewert beschreiben. Das Attribut („pure“) pureist für Methoden gedacht, die den Zustand ihrer Objekte nicht ändern, sondern lediglich einen neuen Wert zurückgeben. Wenn der Rückgabewert nicht verwendet wird, wirkt sich das Entfernen des Aufrufs nicht auf den Programmstatus aus oder ändert die Semantik, es sei denn, der Methodenaufruf löst eine Ausnahme aus (die Ausnahme wird nicht als Nebeneffekt betrachtet). Daher hat das IntelliJ IDEA 2019.1-Team die Unterstützung für @Contract-Annotationen verbessert. Jetzt kann die Entwicklungsumgebung automatisch die „Reinheit“ von Konstruktoren aus Quellen bestimmen.

Springen von einem Java-Stack-Trace zur entsprechenden Position in einem String

Wenn Sie bereits Stufe 9 der Java-Syntax-Quest auf JavaRush erreicht haben, haben Sie bereits gehört, was ein Stack-Trace ist . Das Wesentliche ist, dass die zuletzt aufgerufene Funktion zuerst abgeschlossen werden muss. Wenn Sie nun auf einen Java-Stack-Trace klicken, versucht die IDE, die genaue Position in der Zeile zu ermitteln, zu der Sie den Cursor bewegen möchten. Bisher gelangte man dadurch nur zur ersten Spalte der entsprechenden Zeile.

Änderungen am JVM-Debugger

  • Es gibt eine neue Aktion „Block verlassen“, mit der Sie den aktuellen Block verlassen können, während Sie ein Projekt mit dem JVM-Debugger debuggen.
  • Wenn Sie beim Debuggen die Maus bevorzugen, wird Ihre Arbeit noch komfortabler: Sie können die Bewegung zum Cursor jetzt durch einen einfachen Klick auf die Zeilennummer im Debugging-Modus auslösen.
  • Es gibt jetzt Unterstützung für synchronizedund Debugger assert- switchAusdrucksauswertungsoperatoren.
Tatsächlich gibt es in IntelliJ IDEA 2019.1 noch viel mehr Neuerungen. Sie können mehr darüber auf der Website von JetBrains erfahren , den Autoren dieser IDE (allerdings nur auf Englisch).
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION