Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CSharp_Prog_Guide.doc
Скачиваний:
16
Добавлен:
16.11.2019
Размер:
6.22 Mб
Скачать

Оптимизация кода с помощью операции "извлечение метода"

В описании следующей процедуры объясняется, как создать новый метод из фрагмента кода существующего члена. Эта процедура используется для выполнения операции оптимизации, называемой извлечение метода.

Чтобы воспользоваться операцией "извлечение метода"

  1. Создайте консольное приложение.

Дополнительные сведения см. в разделе Создание консольных приложений (Visual C#).

  1. В окнередактора кода выберите фрагмент кода, который нужно извлечь:

    double area = PI * radius * radius.

  2. В меню Оптимизация выберите пункт Извлечение метода.

Откроется диалоговое окно Извлечение метода.

В качестве альтернативы, диалоговое окно Извлечение метода можно открыть нажатием на клавиатуре сочетания клавиш CTRL+R, M.

Кроме того, можно щелкнуть правой кнопкой мыши выделенный код, навести курсор на пункт меню Оптимизация и затем выбрать пункт Извлечение метода, после чего откроется диалоговое окно Извлечение метода.

  1. Укажите имя нового метода, например CircleArea, в поле Имя нового метода.

Предварительный просмотр сигнатуры нового метода отображается в области Предварительный просмотр сигнатуры метода.

  1. Нажмите кнопку ОК.

Пример

Для подготовки этого примера создайте консольное приложение с именем ExtractMethod и затем замените Program следующим кодом.

----------

Rename

Rename is a refactoring feature in the Visual Studio integrated development environment (IDE) that provides an easy way to rename identifiers for code symbols such as fields, local variables, methods, namespaces, properties, and types. Rename can be used to change the names in comments and in strings and to change the declarations and calls of an identifier.

Note:

When using Source Control for Visual Studio, get the latest version of sources before you try to perform rename refactoring.

Rename refactoring is available from the following Visual Studio features:

Feature

Behavior of Refactoring in the IDE

Code Editor

In the Code Editor, rename refactoring is available when you position the cursor on the code symbol declaration. When the cursor is in this position, you can invoke the Rename command by typing the keyboard shortcut (CTRL + R, R), or by selecting the Rename command from a smart tag, shortcut menu, or the Refactor menu. When you select the Rename command, the Rename dialog box appears.

Class View

When you select an identifier in Class View, rename refactoring is available from the shortcut menu and Refactor menu.

Object Browser

When you select an identifier in Object Browser, rename refactoring is only available from the Refactor menu.

Переименовать

Функция оптимизации Переименование интегрированной среды разработки Visual Studio является простым способом переименования идентификаторов таких символов кода, как поля, локальные переменные, методы, пространства имен, свойства и типы. Функция Переименование может использоваться для изменения имен в комментариях и строках, а также для изменения объявлений и вызовов идентификаторов.

Примечание.

При использовании системы управления версиями для среды разработки Visual Studio перед попыткой выполнить операцию оптимизации "переименование" следует взять последнюю версию исходного кода.

Функция оптимизации "Переименование" доступна из следующих модулей среды разработки Visual Studio:

Модуль

Поведение оптимизации в интегрированной среде разработки

Редактор кода

В редакторе кода операция оптимизации "переименование" доступна при размещении курсора на символах кода определенного типа. Расположив курсор в таком месте, можно вызвать команду Переименование, нажав сочетание клавиш (CTRL + R, R) или выбрав команду Переименование в меню смарт-тегов, контекстном меню или меню Оптимизация. При вызове команды Переименование открывается диалоговое окно Переименование.

Представление классов

При выборе идентификатора в представлении классов операция оптимизации "переименование" доступна из контекстного меню и из меню Оптимизация.

Обозреватель объектов

При выборе идентификатора в обозревателе объектов операция оптимизации "переименование" доступна только из меню Оптимизация.

Property Grid of the Windows Forms Designer

In the Property Grid of the Windows Forms Designer, changing the name of a control will initiate a rename operation for that control. The Rename dialog box will not appear.

Solution Explorer

In Solution Explorer, a Rename command is available on the shortcut menu. If the selected source file contains a class whose class name is the same as the file name, you can use this command to simultaneously rename the source file and execute rename refactoring.

For example, if you create a default Windows application and then rename Form1.cs to TestForm.cs, the source file name Form1.cs will change to TestForm.cs and the class Form1 and all references to that class will be renamed to TestForm.

Note:

The Undo command (CTRL+Z) will only undo rename refactoring in the code and will not change the file name back to the original name.

If the selected source file does not contain a class whose name is the same as the file name, the Rename command in Solution Explorer will only rename the source file and will not execute rename refactoring.

Сетка свойств конструктора Windows Forms

В сетке свойств конструктора Windows Forms изменение имени элемента управления приводит к запуску операции переименования для этого элемента управления. Диалоговое окно Переименование при этом не открывается.

Обозреватель решений

В Обозревателе решений команда Переименование доступна в контекстном меню. Если выбранный файл с исходным кодом содержит класс, имя которого совпадает с именем файла, то эту команду можно использовать для одновременного переименования файла с исходным кодом и выполнения операции оптимизации "переименование".

Например, при создании приложения Windows по умолчанию и переименовании файла Form1.cs в TestForm.cs имя файла с исходным кодом Form1.cs будет изменено на TestForm.cs, а класс Form1 и все ссылки на этот класс будут изменены на TestForm.

Примечание.

Команда Отменить (CTRL+Z) выполняет отмену только операции оптимизации "переименование" в коде, а имя файла на исходное не меняет.

Если выбранный файл с исходным кодом не содержит класса, имя которого совпадает с именем файла, то команда Переименование в Обозревателе решений переименовывает только файл с исходным кодом, а операция оптимизации "переименование" не выполняется.

Rename Operations

When you execute Rename, the refactoring engine performs a rename operation specific for each code symbol, described in the following table.

Code Symbol

Rename Operation

Field

Changes the declaration and usages of the field to the new name.

Local variable

Changes the declaration and usages of the variable to the new name.

Method

Changes the name of the method and all references to that method to the new name.

Note:

When you rename an extension method, the rename operation propagates to all instances of the method that are in scope, regardless of whether the extension method is being used as a static method or an instance method.

Namespace

Changes the name of the namespace to the new name in the declaration, all using statements, and fully qualified names.

Note:

When renaming a namespace, Visual Studio also updates the Default Namespace property on the Application page of the Project Designer. This property cannot be reset by selecting Undo from the Edit menu. To reset the Default Namespace property value, you must modify the property in the Project Designer.

Property

Changes the declaration and usages of the property to the new name.

Type

Changes all declarations and all usages of the type to the new name, including constructors and destructors. For partial types, the rename operation will propagate to all parts.