Visual Studio: Methode aus markierte Code-Zeilen erstellen (Refactoring/Umgestalten)

Wer mit Visual Studio (VS) programmiert, kommt manchmal in die Situation, dass man einige Code-Zeilen innerhalb einer Methode in eine eigene Funktion/Methode auslagern möchte. Dies kann sein, weil man den Code übersichtlicher gestalten möchten oder weil der betreffende Code mehrfach benötigt wird und es sich somit anbietet für den Code eine eigene Methode zu erstellen.

Die Vorgehensweise bestehenden Code in eine neue Methode zu überführen nennt sich Refactoring (Umstrukturierung/Umgestalten von Code). Man muss also nach einem entsprechenden Eintrag in Visual Studio suchen.

Refactoring mit Rechtsklick geht nicht

Die intuitive Vorgehensweise wäre, die betreffenden Code-Zeilen zu markieren und dann per Rechtsklick einen entsprechenden Eintrag für das Refactoring im Kontext-Menü zu suchen. Leider findet man hier nicht das entsprechende Feature.

Refactor übers Menü

Das Refactoring hat Microsoft in VS im Menü “Edit” bzw. bei deutscher Spracheinstellung im “Bearbeiten” -Menü untergebracht.  Zuvor den gewünschten Code, der extrahiert werden soll, markieren und dann übers Menü einmal “Refactor” ➥ “Extract Method…” auswählen. Im deutschen Menü heißt es “Umgestalten” ➥ “Methode extrahieren…“.

Visual Studio Code-Auswahl in Methode umwandeln
Code-Zeilen markieren und unter “Bearbeiten“, “Umgestalten“, “Methode extrahieren…” auswählen

Es werden dann die markierten Code-Zeilen bereits ersetzt durch “NewMethod“, die direkt unten drunter als neue Implementierung der Methode eingefügt werden. Es öffnet sich gleichzeitig ein kleines Fenster, in welchem man den Namen der neuen Methode anpassen kann. In dem Beispiel hier wurde der Name auf “UpdateProperties” angepasst. Drück man danach Enter, wird sowohl die Implementierung als auch die eingefügte Referenz automatisch umbenannt. Wer sich unsicher ist, ob hier alles richtig läuft, kann mit der Tastenkombination “Shift+Enter” sich eine Vorschau anzeigen lassen.

Screenshot Visual Studio neuen Namen für extrahierte Methode vergeben
neuen Namen für extrahierte Methode eingeben

Im nachfolgenden Screenshot sieht, dass aus dem markierten Code erfolgreich eine neue Methode erzeugt worden ist. Diese kann man nun beliebig oft wiederverwenden.

Screenshot der Implementation der neuen Methode und Ersetzen des ausgewählten Codes
Implementierung neuer Methode wird darunter eingefügt und markierte Code-Zeilen werden mit Methode ersetzt

Tastenkombination zum Extrahieren einer Methode

Wem der Weg über das Bearbeiten-Menü zu umständlich ist, der gelangt auch schneller zum Ziel durch Verwendung der passenden Tastenkombination (Shortcut). Dazu einfach:

  1. betreffenden Code markieren
  2. Strg+R und Strg+M nacheinander drücken (Strg-Taste bleibt dabei gedrückt)
  3. Methoden-Name vergeben und wieder Enter drücken.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert