Compartilhar via


Extrair e refatorações embutidas

Visual Studio fornece várias refatorações para extrair código em novas construções ou inlining code para simplificar sua base de código. Você pode acessar essas refatorações por meio do menu Ações Rápidas e Refatorações (Ctrl+.).

Método de extração

Applies to: C#, Visual Basic

Essa refatoração transforma um fragmento de código em seu próprio método, reduzindo a duplicação quando o mesmo código precisa ser chamado de vários locais.

  1. Realce o código a ser extraído:

    • C#:

      Captura de tela do código C# da classe Program. Na função Principal dessa classe, uma linha de código é realçada.

    • Visual Basic:

      Screenshot do código Visual Basic para o Sub Principal. Nesse Sub, uma linha de código é realçada.

  2. Em seguida, siga um destes procedimentos:

    • Keyboard
      • Pressione Ctrl+R e, em seguida, Ctrl+M. (O atalho de teclado pode ser diferente com base em qual perfil você selecionou.)
      • Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e selecione Extrair Método do pop-up da janela Visualização.
    • mouse
      • Selecione Editar > Método de Extração de Refatoração>.
      • Clique com o botão direito do mouse no código e selecione Método de Extração de Extração > de Refatoração>.
      • Clique com o botão direito do mouse no código, selecione o menu Ações Rápidas e Refatorações e selecione Extrair Método no pop-up da janela Visualização.

    O método será criado imediatamente. Agora você pode renomear o método digitando o novo nome.

    Dica

    Você também pode atualizar comentários e outras cadeias de caracteres para usar esse novo nome, bem como visualizar alterações antes de salvar, usando as caixas de seleção na caixa Renomear que aparece na parte superior direita do seu IDE.

    • C#:

      Captura de tela do código C# da classe Program. Um nome de método é realçado e a janela Renomear pop-up está aberta.

    • Visual Basic:

      Screenshot do código Visual Basic para o Sub Principal. Um nome de método é realçado e a janela Renomear pop-up é open.

  3. Quando estiver satisfeito com a alteração, escolha o botão Aplicar ou pressione Enter e as alterações serão confirmadas.

Extrair função local

Aplica-se a: C#

Essa refatoração transforma um fragmento de código de um método existente em uma função local, útil quando o código extraído só precisa ser chamado dentro do mesmo método.

  1. Realce o código a ser extraído.

  2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

  3. Selecione Extrair função local.

    Screenshot da janela de código Visual Studio com uma linha realçada. O menu Ações Rápidas e Refatorações está aberto e a função Extrair local está selecionada.

Extrair classe base

Applies to: C#, Visual Basic

Essa refatoração extrai membros de uma classe selecionada para uma nova classe base, útil quando você deseja compartilhar membros entre classes por meio de herança.

  1. Coloque seu cursor no nome da classe ou em um membro realçado.

  2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

  3. Selecione mover membros para a nova classe base.

    Captura de tela da caixa de diálogo Extrair classe base.

A nova caixa de diálogo Extrair Classe Base será aberta onde você pode especificar o nome da classe base e o local de onde ela deve ser colocada. Você pode selecionar os membros que deseja transferir para a nova classe base e optar por fazer os membros abstratos selecionando a caixa de seleção na coluna Fazer abstrato.

Extrair interface

Applies to: C#, Visual Basic

Essa refatoração cria uma interface usando membros existentes de uma classe, struct ou interface, permitindo que outros tipos compartilhem uma assinatura comum.

  1. Coloque o cursor no nome da classe.

    • C#:

      Captura de tela do código realçado para Extrair Interface – C#.

    • Visual Basic:

      Screenshot do código realçado – Visual Basic.

  2. Em seguida, execute uma das seguintes ações:

    • Keyboard
      • Pressione Ctrl+R e Ctrl+I. (O atalho de teclado pode ser diferente com base em qual perfil você selecionou.)
      • Pressione Ctrl+. para disparar o menu Ações Rápidas e Refatorações e selecione Extrair Interface do pop-up da janela Visualização.
    • mouse
      • Selecione Editar > Interface de Extração de Refatoração>.
      • Clique com o botão direito do mouse no nome da classe, selecione o menu Ações Rápidas e Refatorações e selecione Extrair Interface do pop-up da janela Visualização.
  3. Na caixa de diálogo Extrair Interface que aparece, insira as informações solicitadas:

    Captura de tela da Interface de Extração.

    Campo Descrição
    Novo nome da interface O nome da interface a ser criada. O nome será padrão para IClassName, em que ClassName é o nome da classe selecionada acima.
    Novo nome de arquivo O nome do arquivo gerado que conterá a interface. Assim como no nome da interface, esse nome será padrão para IClassName, em que ClassName é o nome da classe que você selecionou acima. Você também pode selecionar a opção adicionar ao arquivo atual.
    Selecionar membros públicos para a interface de formulário Os itens a serem extraídos na interface. Você pode selecionar quantos desejar.
  4. Escolha OK.

    A interface é criada no arquivo do nome especificado. Além disso, a classe selecionada implementa essa interface.

    • C#:

      Captura de tela da Classe Resultante – C#.

      Captura de tela da Interface Resultante – C#.

    • Visual Basic:

      Screenshot da classe resultante - Visual Basic.

      Screenshot da Interface Resultante – Visual Basic.

Método embutido

Applies to: C#, Visual Basic

Essa refatoração substitui os usos de um método estático, de instância ou de extensão em um único corpo de instrução por sua implementação, por uma opção para remover a declaração de método original.

  1. Coloque seu cursor sobre o uso do método.

  2. Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.

  3. Selecione uma das seguintes opções:

    Selecione Inline <QualifiedMethodName> para remover a declaração do método inline:

    Screenshot do menu Ações Rápidas e Refatorações em Visual Studio com Converter 'CreateWidget()' embutido selecionado e alterações de código em C# mostradas.

    Selecione Em linha e mantenha <QualifiedMethodName> para preservar a declaração do método original.

    Screenshot do menu Ações Rápidas e Refatorações em Visual Studio com Converter 'Embutido e manter 'CreateWidget()' selecionado e alterações de código C# mostradas.

Variável temporária embutida

Applies to: C#, Visual Basic

Essa refatoração remove uma variável temporária e a substitui por seu valor, simplificando o código quando a variável temporária torna o código mais difícil de entender.

  1. Realce ou coloque o cursor de texto dentro da variável temporária a ser embutida:

    • C#:

      Captura de tela do código realçado para Variável Temporária Embutida – C#.

    • Visual Basic:

      Screenshot do código realçado- Visual Basic.

  2. Em seguida, siga um destes procedimentos:

    • Keyboard
      • Pressione (Ctrl+.) para acionar o menu Ações Rápidas e Refatorações.
    • mouse
      • Clique com o botão direito do mouse no código e selecione o menu Ações Rápidas e Refatorações .
  3. Selecione variável temporária embutida no pop-up da janela Visualização.

    A variável é removida e seus usos substituídos pelo valor da variável.

    • C#:

      Captura de tela do resultado embutido – C#.

    • Visual Basic:

      Screenshot do resultado embutido - Visual Basic.