Condividi tramite


Estrai e refactoring inline

Visual Studio fornisce diversi refactoring per estrarre il codice in nuovi costrutti o codice di inlining per semplificare la codebase. È possibile accedere a questi refactoring tramite il menu Azioni rapide e refactoring (CTRL+).).

Metodo di estrazione

Applica a: C#, Visual Basic

Questo refactoring trasforma un frammento di codice nel proprio metodo, riducendo la duplicazione quando lo stesso codice deve essere chiamato da più posizioni.

  1. Evidenziare il codice da estrarre:

    • C# :

      Screenshot del codice C# per la classe Program. Nella funzione Main di tale classe viene evidenziata una riga di codice.

    • Visual Basic:

      Screenshot del codice di Visual Basic per main sub. In tale sub viene evidenziata una riga di codice.

  2. Eseguire quindi una delle operazioni seguenti:

    • Keyboard
      • Premere CTRL+R, quindi CTRL+M. La scelta rapida da tastiera può essere diversa in base al profilo selezionato.
      • Premere CTRL+per attivare il menu Azioni rapide e refactoring e selezionare Estrai metodo dal popup della finestra di anteprima.
    • Mouse
      • Selezionare Modifica > metodo di estrazione del refactoring>.
      • Fare clic con il pulsante destro del mouse sul codice e selezionare Refactoring Extract Extract Method (Refactoring > Extract Extract > Method).
      • Fare clic con il pulsante destro del mouse sul codice, scegliere il menu Azioni rapide e refactoring e scegliere Estrai metodo dal popup della finestra di anteprima.

    Il metodo verrà creato immediatamente. È ora possibile rinominare il metodo digitando il nuovo nome.

    Suggerimento

    È anche possibile aggiornare commenti e altre stringhe per usare questo nuovo nome, nonché visualizzare in anteprima le modifiche prima del salvataggio, usando le caselle di controllo nella casella Rinomina visualizzata in alto a destra dell'IDE.

    • C# :

      Screenshot del codice C# per la classe Program. Il nome di un metodo è evidenziato e la finestra popup Rinomina è aperta.

    • Visual Basic:

      Screenshot del codice di Visual Basic per main sub. Il nome di un metodo è evidenziato e la finestra popup Rinomina è open.

  3. Quando si è soddisfatti della modifica, scegliere il pulsante Applica o premere INVIO e verrà eseguito il commit delle modifiche.

Estrarre la funzione locale

Si applica a: C#

Questo refactoring trasforma un frammento di codice da un metodo esistente in una funzione locale, utile quando il codice estratto deve essere chiamato solo all'interno dello stesso metodo.

  1. Evidenziare il codice da estrarre.

  2. Premere CTRL+ per attivare il menu Azioni rapide e refactoring.

  3. Selezionare Extract local function (Estrai funzione locale).

    Screenshot della finestra del codice Visual Studio con una riga evidenziata. Il menu Azioni rapide e refactoring è aperto ed è selezionata la funzione locale Extract.

Estrarre la classe di base

Applica a: C#, Visual Basic

Questo refactoring estrae membri da una classe selezionata a una nuova classe base, utile quando si desidera condividere i membri tra le classi tramite ereditarietà.

  1. Posizionare il cursore sul nome della classe o su un membro evidenziato.

  2. Premere CTRL+ per attivare il menu Azioni rapide e refactoring.

  3. Selezionare Estrarre i membri nella nuova classe base.

    Screenshot della finestra di dialogo Estrai classe di base.

Verrà visualizzata la nuova finestra di dialogo Estrai classe base in cui è possibile specificare il nome per la classe di base e la posizione in cui deve essere posizionata. È possibile selezionare i membri da trasferire alla nuova classe di base e scegliere di rendere astratti i membri selezionando la casella di controllo nella colonna Make abstract .

Estrarre l'interfaccia

Applica a: C#, Visual Basic

Questo refactoring crea un'interfaccia usando membri esistenti da una classe, uno struct o un'interfaccia, consentendo ad altri tipi di condividere una firma comune.

  1. Posizionare il cursore nel nome della classe.

    • C# :

      Screenshot del codice evidenziato per Extract Interface - C#.

    • Visual Basic:

      Screenshot del codice evidenziato - Visual Basic.

  2. Eseguire quindi una delle azioni seguenti:

    • Keyboard
      • Premere CTRL+R, quindi CTRL+I. La scelta rapida da tastiera può essere diversa in base al profilo selezionato.
      • Premere CTRL+per attivare il menu Azioni rapide e refactoring e selezionare Estrai interfaccia dal popup della finestra di anteprima.
    • Mouse
      • Selezionare Modifica > interfaccia estrai refactoring>.
      • Fare clic con il pulsante destro del mouse sul nome della classe, scegliere il menu Azioni rapide e refactoring e scegliere Estrai interfaccia dal popup della finestra di anteprima.
  3. Nella finestra di dialogo Estrai interfaccia visualizzata immettere le informazioni richieste:

    Screenshot dell'interfaccia di estrazione.

    Campo Descrizione
    Nuovo nome dell'interfaccia Nome dell'interfaccia da creare. Per impostazione predefinita, il nome sarà IClassName, dove ClassName è il nome della classe selezionata in precedenza.
    Nuovo nome file Nome del file generato che conterrà l'interfaccia . Come per il nome dell'interfaccia, per impostazione predefinita questo nome sarà IClassName, dove ClassName è il nome della classe selezionata in precedenza. È anche possibile selezionare l'opzione Aggiungi al file corrente.
    Selezionare i membri pubblici per formare l'interfaccia Elementi da estrarre nell'interfaccia. È possibile selezionare il numero desiderato.
  4. Scegliere OK.

    L'interfaccia viene creata nel file del nome specificato. Inoltre, la classe selezionata implementa tale interfaccia.

    • C# :

      Screenshot della classe risultante - C#.

      Screenshot dell'interfaccia risultante - C#.

    • Visual Basic:

      Screenshot della classe risultante - Visual Basic.

      Screenshot dell'interfaccia risultante - Visual Basic.

Metodo in linea

Applica a: C#, Visual Basic

Questo refactoring sostituisce gli utilizzi di un metodo statico, di istanza o di estensione all'interno di un singolo corpo di istruzione con la relativa implementazione, con un'opzione per rimuovere la dichiarazione del metodo originale.

  1. Posizionare il cursore sull'utilizzo del metodo .

  2. Premere CTRL+ per attivare il menu Azioni rapide e refactoring.

  3. Selezionare una delle opzioni seguenti:

    Selezionare Inline per rimuovere la dichiarazione del metodo inline <QualifiedMethodName> :

    Screenshot del menu Azioni rapide e refactoring in Visual Studio con converti 'Inline 'CreateWidget()' selezionato e modifiche al codice C# visualizzate.

    Selezionare Inline e mantenere <QualifiedMethodName> la dichiarazione del metodo originale:

    Screenshot del menu Azioni rapide e refactoring in Visual Studio con Convert 'Inline and keep 'CreateWidget()' selected and C# code changes shown.

Variabile temporanea in linea

Applica a: C#, Visual Basic

Questo refactoring rimuove una variabile temporanea e la sostituisce con il relativo valore, semplificando invece il codice quando la variabile temporanea rende il codice più difficile da comprendere.

  1. Evidenziare o posizionare il cursore di testo all'interno della variabile temporanea da inlining:

    • C# :

      Screenshot del codice evidenziato per variabile temporanea inline - C#.

    • Visual Basic:

      Screenshot del codice evidenziato- Visual Basic.

  2. Eseguire quindi una delle operazioni seguenti:

    • Keyboard
      • Premere CTRL+ per attivare il menu Azioni rapide e refactoring.
    • Mouse
      • Fare clic con il pulsante destro del mouse sul codice e scegliere il menu Azioni rapide e refactoring .
  3. Selezionare Variabile temporanea inline dal popup della finestra di anteprima.

    La variabile viene rimossa e i relativi utilizzi vengono sostituiti dal valore della variabile.

    • C# :

      Screenshot del risultato inline - C#.

    • Visual Basic:

      Screenshot del risultato Inline - Visual Basic.