Поделиться через


Рефакторинг для извлечения интерфейса

Область применения этого рефакторинга:

  • C#

  • Visual Basic

Что: позволяет создать интерфейс с помощью существующих элементов из класса, структуры или интерфейса.

Когда: члены класса, структуры или интерфейса, которые могут наследоваться другими классами, структурами или интерфейсами.

Зачем? Интерфейсы — это отличные конструкции для объектно-ориентированных схем. Представьте классы различных животных (собака, кот, птица), которые могут иметь общие методы, такие как, еда, питье, сон. Благодаря интерфейсу IAnimal классы "собака", "кот" и "птица" смогут иметь общую "сигнатуру" для этих методов.

Рефакторинг для извлечения интерфейса

  1. Поместите курсор в имени класса.

    • C#.

      Highlighted code - C#

    • Visual Basic:

      Highlighted code - Visual Basic

  2. Затем выполните одно из следующих действий:

    • Клавиатура
      • Нажмите клавиши CTRL + R, а затем — CTRL + I. (Сочетание клавиш может отличаться в зависимости от выбранного профиля.)
      • Нажмите клавиши CTRL+. Чтобы активировать меню "Быстрые действия" и "Рефакторинг" и выберите пункт "Извлечь интерфейс" во всплывающем окне предварительного просмотра.
    • Мышь
      • Выберите "Изменить > интерфейс извлечения рефакторинга>".
      • Щелкните правой кнопкой мыши и выберите меню Быстрые действия и рефакторинг. Затем выберите во всплывающем окне предварительного просмотра пункт Извлечь интерфейс.
  3. В открывшемся диалоговом окне Извлечение интерфейса введите запрашиваемые сведения:

    Extract Interface

    Поле Description
    Имя нового интерфейса Имя создаваемого интерфейса. Имя по умолчанию — Iимя_класса, где имя_класса — имя класса, выбранного выше.
    Имя нового файла Имя созданного файла, который будет содержать интерфейс. Как и в случае с именем интерфейса, по умолчанию это будет Iимя_класса, где имя_класса — имя класса, выбранного выше. Можно также выбрать возможность Добавить в текущий файл.
    Выбрать открытые элементы для создания интерфейса Элемент, который нужно извлечь в интерфейс. Можно выбрать столько элементов, сколько требуется.
  4. Выберите OK.

    Интерфейс создается в файле с указанным именем. Кроме того, выбранный класс реализует этот интерфейс.

    • C#.

      Resulting Class - C#

      Resulting Interface - C#

    • Visual Basic:

      Resulting Class - Visual Basic

      Resulting Interface - Visual Basic

См. также