Hero background image
Sicherstellung von Codequalität und Wartbarkeit mit Roslyn-Analysatoren

In diesem Artikel wird erklärt, wie ein Roslyn-Analyzer Ihnen beim Debuggen und Verbessern der Qualität Ihres Spielcodes in Unity helfen kann.

Ein Roslyn-Analyzer ist ein Code-Analyse-Tool, das die APIs der Roslyn-Compiler-Plattform verwendet, um C#-Code in Echtzeit zu analysieren. Ein Analyzer kann auf der Grundlage einer Reihe von vordefinierten Regeln Vorschläge zur Verbesserung des Codes, Warnungen oder Fehler liefern. Es arbeitet als Plug-in für Microsoft Visual Studio und Microsoft Visual Studio Code und ergänzt die IntelliSense-Funktionen in diesen beiden Code-Editoren.

Roslyn-Analysatoren bauen auf den Vorschlägen, Vervollständigungen und Informationen über verfügbare APIs auf, die von IntelliSense bereitgestellt werden, und bieten zusätzliche Tools zur Analyse und Identifizierung potenzieller Probleme in Ihrem Code. Außerdem erhalten Sie Vorschläge für mögliche Korrekturen unter Verwendung der APIs einer Roslyn-Compiler-Plattform.

Roslyn-Analysatoren sind nützlich, um Standards durchzusetzen und Sie zu warnen, wenn Sie eine Codekonvention verletzen. Darüber hinaus können sie oft dabei helfen, Codefehler oder Stilbrüche zu beheben.

Visual Studio wird mit vielen Standard-Analyzern geliefert, die Teil des Open-Source-Repos für Roslyn sind und eine gute Ressource darstellen, um mehr über das Debugging mit dieser Methode zu erfahren.

Hinweis Der größte Teil dieses Artikels gilt nur für Windows. Roslyn-Analyzer sind auch für die Verwendung mit Visual Studio für macOS verfügbar, aber die Unterstützung für die Inspektion ist im Vergleich zu dem, was für Windows verfügbar ist, begrenzt.

Roslyn Analyzer
Roslyn-Analysator in Aktion

Das obige Bild stammt aus einem Video, das eine typische Verwendung eines Roslyn-Analysators zeigt. In diesem Beispiel wurde bei der Analyse des Codes eine nicht verwendete Variable entdeckt. Der Entwickler wird auf dieses Problem aufmerksam gemacht, da die Anzahl der Variablen mit einem grünen Schnörkel unterstrichen ist. Wenn Sie darauf klicken, werden das Problem und ein Link mit Optionen zur Behebung des Problems angezeigt. Im Video beschließt der Entwickler, die nicht verwendete Variable auf der Grundlage der Empfehlung zu entfernen.

Neben einem grünen Schnörkel können Sie auch einen roten Schnörkel oder graue Punkte sehen. Diese verschiedenen Symbole geben die Sicherheitsstufe des Problems an, d. h. wie schwerwiegend das Problem für Ihren Code ist.

Analyzer-Schweregrade
Schweregrade

Wie die obige Tabelle zeigt, hat jedes Analysegerät einen vom Benutzer konfigurierbaren Schweregrad.

Roslyn Analyzer
Konfigurieren der eingebauten Analysatoren

Es gibt mehrere Roslyn-Analysatoren, aber auch in Visual Studio sind einige vorinstalliert. Sie können die Einstellungen dieser integrierten Analysatoren an zwei Stellen anpassen. Für Ihre lokale Version von Visual Studio werden die Standardeinstellungen über Extras > Optionen > Texteditor > C# > Codestil > Allgemein angepasst. Sie können den Schweregrad mithilfe des oben abgebildeten Dialogfelds ändern.

Roslyn Analyzer
Ein Blick auf die Hervorhebung des Analysators

Das obige Bild zeigt eine einfache Codeklasse. Das Ellipsen-Symbol (drei Punkte in einer Linie) unter den Buchstaben p und o in pos in Zeile 7 und die if-Anweisung in Zeile 11 zeigen einen Vorschlag an. Der grüne Schnörkel unter distance ist eine Warnung, und der rote Schnörkel unter den beiden Instanzen von xPos in Zeile 11 ist ein Fehler. Warnungen und Fehler werden auch im Fenster Fehlerliste angezeigt.

Schritte zum Aufzeigen möglicher Korrekturen
Mögliche Korrekturen aufzeigen

Sie werden feststellen, dass das Bild, das die Einstellungen für die eingebauten Analyzer zeigt, zwischen "Nur Refactoring" und dem Vorschlag für Codeblock-Einstellungen umschaltet: Bevorzugen Sie Klammern. Durch eine Umstrukturierung würde lediglich die Ellipse unter der if-Anweisung ausgeblendet.

Wenn die Einstellung für die geschweiften Klammern ein Vorschlag ist und Sie mit dem Mauszeiger über die Ellipse fahren, wird ein Fenster mit einem Link fürmögliche Korrekturen angezeigt. Wenn Sie darauf klicken, wird ein weiteres Feld mit den verfügbaren Optionen angezeigt. In diesem Fall gibt es nur eine Möglichkeit, nämlich geschweifte Klammern in den Code einzufügen. Das obige Bild zeigt diese Sequenz.

Hinzufügen einer .editorconfig-Datei

Wenn Sie den Code-Stil für ein bestimmtes Projekt festlegen möchten, können Sie eine .editorconfig-Datei hinzufügen, die mit dem Projekt geliefert wird. Dies kann ein effizienter Weg sein, um vereinbarte Code-Stilregeln in einem größeren Team mit vielen Entwicklern durchzusetzen.

Eine .editconfig-Datei ermöglicht es Ihnen, die Einstellungen in Ihrer Version von Visual Studio über Extras > Optionen > Texteditor > C# außer Kraft zu setzen. Sie können bei Bedarf sogar mehrere .editorconfig-Dateien verschachteln, indem Sie eine im Stammverzeichnis und eine in einem Unterordner ablegen. Die Datei im Unterordner hat dann Vorrang vor der im Stammordner.

In den nächsten Abschnitten wird beschrieben, wie Sie eine .editorconfig-Datei hinzufügen.

Roslyn Analyzer
Ändern des Schweregrads

Ändern Sie den Schweregrad eines enthaltenen Analyzers in einem Code-Textfenster.

Roslyn Analyzer
Über den Solution Explorer

Klicken Sie mit der rechten Maustaste auf den Solution Explorer und wählen Sie Neues Element. Wählen Sie im nächsten Fenster die Option Installiert > C# > Allgemeine editorconfig-Datei (Standard).

Eine weitere Möglichkeit ist die Auswahl der Option Generate .editorconfig file in den Einstellungen unter Extras > Optionen > Texteditor > C# (wie im Bild unter Configure built-in analyzers zu sehen).

Roslyn Analyzer
Ihre .editorconfig-Datei

Da Sie nun eine .editorconfig-Datei haben, zeigt Visual Studio (Windows-Version) eine editierbare Ansicht der Textdatei unter der Haube an. Änderungen an dieser Datei wirken sich auf die C#-Skripte in dem Ordner aus, in dem die .editorconfig gespeichert ist, sowie auf alle Unterordner.

Verwendung der Paketmanager-Konsole
Installation von benutzerdefinierten Analysatoren

Sie können die Funktionalität erweitern, indem Sie die vorinstallierten Roslyn-Analysatoren ergänzen. Analyzer werden entweder als NuGet-Pakete oder als Visual Studio-Erweiterungen (VSIX-Dateien) installiert. Rufen Sie www.nuget.org auf, um das NuGet-Paket zu installieren. Ein beliebtes Programm ist der StyleCop.Analyzers, der nach Stilproblemen in Ihrer Codebasis sucht.

Installieren Sie das Paket in Visual Studio mit der Package Manager Console über Tools > NuGet Package Manager > Package Manager Console. Auf der Seite www.nuget.org finden Sie für jedes Analyzer-Paket den Befehl, den Sie in die Paketmanager-Konsole einfügen müssen. Es gibt sogar eine praktische Schaltfläche zum Kopieren des Textes in die Zwischenablage.

Roslyn Analyzer
Analyzer-Baugruppen

Die Analyzer-Baugruppen werden installiert und erscheinen im Projektmappen-Explorer unter Referenzen > Analyzers.

Roslyn Analyzer
Analysatoren als VSIX-Erweiterungen installieren

Eine weitere Möglichkeit ist die Installation von Analysatoren, die als VSIX-Erweiterungen bereitgestellt werden. Wählen Sie in Visual Studio Erweiterungen > Erweiterungen verwalten.

Wenn Sie den Namen der Erweiterung kennen, verwenden Sie das Suchfeld, um sie zu finden, oder suchen Sie einfach nach "analyzer". In der obigen Abbildung ist der Comment Analyzer ausgewählt. Klicken Sie auf Download, um die Analyzer-Erweiterung zu installieren, wählen Sie OK, um das Dialogfeld zu schließen, und schließen Sie alle Instanzen von Visual Studio, um das VSIX-Installationsprogramm zu starten.

Wählen Sie Ändern, um die Installation zu starten. Wenn die Installation abgeschlossen ist, wählen Sie Schließen und öffnen Sie Visual Studio erneut.

Roslyn Analyzer
Überprüfung der Installation der Erweiterung

Wenn Sie überprüfen möchten, ob die Erweiterung installiert ist, wählen Sie Erweiterungen > Erweiterungen verwalten. Wählen Sie im Dialogfeld "Erweiterungen verwalten" die Kategorie "Installiert" auf der linken Seite aus, und suchen Sie dann die Erweiterung anhand ihres Namens.

Sauberen Code schreiben
Weitere Ressourcen

Dieser Artikel konzentriert sich auf integrierte Roslyn-Analysatoren, die in Visual Studio verfügbar sind, aber Sie können auch Ihre eigenen erstellen. Analyzer, die mit der .NET Compiler-Plattform erstellt wurden, können die Qualität des Codes Ihres Teams erheblich verbessern.

Mit zunehmender Erfahrung bei der Erstellung von Analyzern werden Sie feststellen, wie sie Ihrem Team helfen, produktiver mit Codierungsproblemen wie Syntax, wiederholten Bearbeitungen, Anleitungen für eine neue Bibliothek und vielem mehr umzugehen.

Einige gute zusätzliche Ressourcen von Microsoft sind dieses Tutorial zum Erstellen eines eigenen C#-Roslyn-Analyzers und dieses YouTube-Video über Roslyn-Analyzer.

Fehlerbehebung in Unity

In diesen Artikeln finden Sie weitere Tipps zur Fehlersuche in Ihrem Unity-Projekt:

Fortgeschrittene technische E-Books

Unity bietet eine Reihe von fortgeschrittenen Anleitungen, die professionellen Entwicklern bei der Optimierung des Spielcodes helfen. Erstellen Sie einen C# Style Guide: Schreiben Sie sauberen, skalierbaren Code stellt Ratschläge von Branchenexperten zusammen, wie Sie einen Code-Style-Guide erstellen können, um Ihr Team bei der Entwicklung einer sauberen, lesbaren und skalierbaren Codebasis zu unterstützen.

Ein weiterer beliebter Leitfaden bei unseren Nutzern ist 70+ Tipps zur Steigerung der Produktivität mit Unity. Er ist vollgepackt mit zeitsparenden Tipps zur Verbesserung Ihres täglichen Arbeitsablaufs mit Unity 2020 LTS - Tipps, die selbst erfahrene Entwickler vielleicht übersehen haben.

Alle fortgeschrittenen E-Books und Artikel von Unity finden Sie im Unity Best Practices Hub.

Haben Ihnen diese Inhalte gefallen?