Visual Studio Code - リファクタリング
初めに
リファクタリングとは、外部から見たときの挙動を変えずに、プログラムの内部構造を整理することです。本記事では、メソッドの抽出など Visual Studio Code にあるリファクタリングに関する機能を紹介します。
メソッドの抽出
メソッドとして記述されていない部分を、メソッドとして抽出することができます。
void Start() { float radius = 2; float area = Mathf.PI * radius * radius; }
メソッドにしたい部分を選択し、Ctrl + . を押すと、次のような表示が現れます。
"メソッドを抽出する" を選択すると、メソッドとして、抽出されます。
void Start() { NewMethod(); } private static void NewMethod() { float radius = 2; float area = Mathf.PI * radius * radius; }
シンボルの名前の変更
型名、メソッド名、変数などを一括で変更します。
変更したい部分を選択し、F2 キーを押すと、次のように表示されます。
ここで変更後のシンボル名を入力すると、シンボル名が一括で変更されます。
ローカル変数として抽出する
名前がついていない変数に対して、変数名をつけ、抽出できます。
void Start() { float edge = 3; float minArea = 4; if (edge * edge > minArea) //変数名がついていない部分 { //処理 } if (edge * edge > minArea) //変数名がついていない部分 { //処理 } }
ローカル変数として、抽出したい部分を選択し、Ctrl + . を押します。
"ローカルとして導入します" を選択すると、ローカル変数として抽出されます。
"すべての発生に対して..." の方を選択すると、同じ式である部分が一括で変換されます。
選択した型を同じ名前の別のファイルに移動
同じファイルに複数の型を配置すると、これらの型を検索しづらくなります。 型を同じ名前のファイルに移動することで、コードが読みやすくナビゲートしやすくなります。
別のファイルに移動したい型を選択し、Ctrl + . を押します。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Sample230624 : MonoBehaviour { // Start is called before the first frame update void Start() { } } class Person { public string FirstName { get; set; } public string LastName { get; set; } }
次のような表示が現れるので、"型を 〇〇 に移動" を選択します。
型名と同じ名前のファイルに移動されました。もし、同じ名前のファイルがなければ、新たに生成されます。