Resharper: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Dietsch (Diskussion | Beiträge)
remove comments
Dietsch (Diskussion | Beiträge)
typos, grammar
 
Zeile 4: Zeile 4:


Die wichtigsten Features von [[Resharper]] sind:
Die wichtigsten Features von [[Resharper]] sind:
*Die Einhaltung von [[Coding Conventions]] werden automatisch und Client-seitig überprüft. [[Coding Conventions]] sind in [[Resharper]] frei konfigurierbar, Verletzungen können als Hinweis, Warnung oder Fehler angezeigt werden. Im Softwarepraktikum stellen wir eine Konfigurationsdatei bereit (zur Installation siehe Abschnitt [[#Konfiguration|Konfiguration]], die einheitliche [[Coding Conventions]] für alle Gruppen definiert.
* Die Einhaltung von [[Coding Conventions]] werden automatisch und Client-seitig überprüft. [[Coding Conventions]] sind in [[Resharper]] frei konfigurierbar, Verletzungen können als Hinweis, Warnung oder Fehler angezeigt werden. Im Softwarepraktikum stellen wir eine Konfigurationsdatei bereit (zur Installation siehe Abschnitt [[#Konfiguration|Konfiguration]]), die einheitliche [[Coding Conventions]] für alle Gruppen definiert.
*Verschiedene Werkzeuge zur statischen Analyse des Programcodes. Dafür markiert [[Resharper]] schon im Quelltext on-the-fly Fehler oder potentielle Fehlerquellen, wie z.B. ungenutzte Felder oder unerreichbare Pfade. Für sehr viele Arten von Fehlern, Warnungen oder Unschönheiten bietet er außerdem automatische Korrekturmöglichkeiten an, so dass lästige Arbeiten, wie zum Beispiel das Hinzufügen von Using-Direktiven, automatisch vorgenommen werden können.
* Verschiedene Werkzeuge zur statischen Analyse des Programmcodes. Dafür markiert [[Resharper]] schon im Quelltext on-the-fly Fehler oder potentielle Fehlerquellen, wie z.B. ungenutzte Felder oder unerreichbare Pfade. Für sehr viele Arten von Fehlern, Warnungen oder Unschönheiten bietet er außerdem automatische Korrekturmöglichkeiten an, sodass lästige Arbeiten, wie zum Beispiel das Hinzufügen von Using-Direktiven, automatisch vorgenommen werden können.
*Verschiedene Arten von Refactoring, wie z.B. Methoden extrahieren oder Methoden in der Vererbungshierarchie verschieben. Es können auch ganze Code-Bausteine oder Fragmente erzeugt werden.
* Verschiedene Arten von Refactoring, wie z.B. Methoden extrahieren oder Methoden in der Vererbungshierarchie verschieben. Es können auch ganze Code-Bausteine oder Fragmente erzeugt werden.
* Zusätzlich erweitert [[Resharper]] bereits vorhandene Werkzeuge von [[Visual Studio]], wie z.B. IntelliSense und die Codevervollständigung, um viele Funktionen.
* Zusätzlich erweitert [[Resharper]] bereits vorhandene Werkzeuge von [[Visual Studio]], wie z.B. IntelliSense und die Codevervollständigung, um viele Funktionen.


Zeile 20: Zeile 20:


[[Resharper]] analysiert die gesamte Solution und zeigt basierend auf sehr vielen Regeln diverse Nachrichten an, die verschiedene Schwachstellen des Codes aufzeigen sollen. Diese Nachrichten werden in 4 verschiedene Klassen eingeteilt, nämlich Hints, Suggestions, Warnings und Errors. Der Benutzer kann in [[Visual Studio]] die Nachrichten auf zwei Arten einsehen:
[[Resharper]] analysiert die gesamte Solution und zeigt basierend auf sehr vielen Regeln diverse Nachrichten an, die verschiedene Schwachstellen des Codes aufzeigen sollen. Diese Nachrichten werden in 4 verschiedene Klassen eingeteilt, nämlich Hints, Suggestions, Warnings und Errors. Der Benutzer kann in [[Visual Studio]] die Nachrichten auf zwei Arten einsehen:
*Durch ein spezielles Fenster, dass durch das Menü <tt>ReSharper -> Inspect -> Code Issues in Solution</tt> erreicht werden kann. Stellen Sie sicher, dass m Fenster <code>Code Issues unter Filter -> Issues to show -> C#</code> sind alle Haken gesetzt (siehe Bild).
* Durch ein spezielles Fenster, dass durch das Menü <tt>ReSharper -> Inspect -> Code Issues in Solution</tt> erreicht werden kann. Stellen Sie sicher, dass im Fenster <code>Code Issues unter Filter -> Issues to show -> C#</code> alle Haken gesetzt sind (siehe Bild).
* Durch kleine Striche direkt nebem dem horizontalen Scollbalken (siehe {{LinkImg|1|Abbildung 1}}) in einem der Code-Editor-Fenster. Die Farbe der Striche gibt dabei die Art der jeweiligen Nachricht an.
* Durch kleine Striche direkt neben dem horizontalen Scrollbalken (siehe {{LinkImg|1|Abbildung 1}}) in einem der Code-Editor-Fenster. Die Farbe der Striche gibt dabei die Art der jeweiligen Nachricht an.


Wenn auf einen Eintrag in dem Fenster bzw. auf einen der Striche geklickt wird, springt der Cursor automatisch an die entsprechende Stelle im Code und auf der linken Seite erscheint ein kleines Kontextmenüsymbol (siehe {{LinkImg|1|Abbildung 1}}), das durch einen weiteren Klick Optionen zur Behandlung des aktuellen Problems anbietet. Dieses Symbol erscheint auch, wenn man den Cursor manuell auf eine Programmstelle setzt, für die [[Resharper]] Nachrichten hat.  
Wenn auf einen Eintrag in dem Fenster bzw. auf einen der Striche geklickt wird, springt der Cursor automatisch an die entsprechende Stelle im Code und auf der linken Seite erscheint ein kleines Kontextmenüsymbol (siehe {{LinkImg|1|Abbildung 1}}), das durch einen weiteren Klick Optionen zur Behandlung des aktuellen Problems anbietet. Dieses Symbol erscheint auch, wenn man den Cursor manuell auf eine Programmstelle setzt, für die [[Resharper]] Nachrichten hat.  
Zeile 29: Zeile 29:
{{RefImg|ReSharperRefactor.png|500px|1|Kontextmenu "Refactoring".}}
{{RefImg|ReSharperRefactor.png|500px|1|Kontextmenu "Refactoring".}}
Klickt man im Programmtext auf ein Symbol, wie etwas eine Variable mit der rechten Maustaste erscheint ein Kontextmenü, in dem sich unter anderem der Punkt Refactor befindet. Darunter finden sich mehrere Optionen:
Klickt man im Programmtext auf ein Symbol, wie etwas eine Variable mit der rechten Maustaste erscheint ein Kontextmenü, in dem sich unter anderem der Punkt <tt>Refactor</tt> befindet. Darunter finden sich mehrere Optionen:
*'''Refactor this...''' zeig alle Möglichkeiten an.
*'''Refactor this...''' zeig alle Möglichkeiten an.
*'''Inline''' Wenn man eine Variable ausgewählt hat kann man sie inlinen
*'''Inline''' Wenn man eine Variable ausgewählt hat kann man sie inlinen
*'''Rename''' Variablen können hiermit Solutionweit umbenannt werden
*'''Rename''' Variablen können hiermit in der gesamten Solution umbenannt werden
*'''Extract Method''' Wenn man einen Programm-Block auswählt, kann man diesen in eine Methode extrahieren
*'''Extract Method''' Wenn man einen Programm-Block auswählt, kann man diesen in eine Methode extrahieren
*'''Push/Pull members Up/Dpwn''' Hiermit können Methoden in der Vererbungshierarchie verschoben werden
*'''Push/Pull members Up/Down''' Hiermit können Methoden in der Vererbungshierarchie verschoben werden
Es gibt weitere Möglichkeiten, insbesondere unter dem Punkt "Convert", kann man ausgewählten Quelltext in verschiedener Art verändern.<br clear="all">
Es gibt noch weitere Funktionen die z.B. unter dem Punkt "Convert" zu finden sind.  
<br clear="all">


===Kontextmenü "Inspect"===
===Kontextmenü "Inspect"===
{{RefImg|ReSharperInspect.png|500px|1|Kontextmenu "Inspect".}}
{{RefImg|ReSharperInspect.png|500px|1|Kontextmenu "Inspect".}}
Ausserdem gibt es in dem Kontextmenu, das man erhält, wenn man auf ein Programmsymbol rechtklickt die Möglichkeit zur Analyse:
Außerdem gibt es in dem Kontextmenü, das man erhält, wenn man auf ein Programmsymbol rechts klickt die Möglichkeit zur Analyse:
*'''Inspect This...''' Zeigt alle möglichen Optionen an
*'''Inspect This...''' Zeigt alle möglichen Optionen an
*'''Type Hierarchy''' Zeigt die Hierarchie innerhalb der Vererbung
*'''Type Hierarchy''' Zeigt die Hierarchie innerhalb der Vererbung
Abgerufen von „https://sopranium.de/Resharper