リファクタリング/メソッドの抽出
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[リファクタリング]]
* メソッドの抽出 [#wa237b1f]
** 内容 [#g23b84f4]
: ひとまとめにできるコードの断片がある |
-- コードの断片をメソッドにして、それを目的を表すような名...
*** 変更前 [#me8b2cf6]
#pre{{
void printOwing(double amount) {
printBanner();
//明細の表示
System.out.println("name:" + _name);
System.out.println("amout:" + amount);
}
}}
*** 変更後 [#f9f1e7fe]
#pre{{
void printOwing(double amount) {
printBanner();
printDetails(amount);
}
void printDetals(double amount) {
System.out.println("name:" + _name);
System.out.println("amout:" + amount);
}
}}
** 動機 [#x1b02594]
長すぎるメソッド、コメントがないとその目的が理解できない...
うまく名前付けされた短いコードが好ましい理由は、
- メソッドの粒度が細かければ、他のメソッドから利用できる...
- メソッド呼び出しがコメント列のように読み取れ、メソッド...
*** 注意点 [#pbfd2411]
メソッドのネーミングは、その長さではなく、メソッド本体の...
** 手順 [#v2c73fbe]
+ 新たなメソッドを作成し、メソッドの意図に合わせて命名す...
-- どんな処理をするかではなく、何をするかによって命名する
+ 抽出されるコードを本のメソッドから新たな抽出先のメソッ...
+ 元のメソッドのローカル変数とメソッドパラメータへの参照...
+ 一時変数は抽出されるコード内だけで使われていることを確...
+ 抽出されるコードがローカルスコープ変数を変更するかどう...
-- 変更される変数が1つならば、抽出したコードを問い合わせ...
-- [[一時変数の分離>リファクタリング/一時変数の分離]]、[[...
+ すべてのローカルスコープ変数に対する処理が終わったらコ...
+ 元のメソッド呼び出しを新しく抽出されたメソッドに置き換...
** コメント [#bac88bee]
#comment
終了行:
[[リファクタリング]]
* メソッドの抽出 [#wa237b1f]
** 内容 [#g23b84f4]
: ひとまとめにできるコードの断片がある |
-- コードの断片をメソッドにして、それを目的を表すような名...
*** 変更前 [#me8b2cf6]
#pre{{
void printOwing(double amount) {
printBanner();
//明細の表示
System.out.println("name:" + _name);
System.out.println("amout:" + amount);
}
}}
*** 変更後 [#f9f1e7fe]
#pre{{
void printOwing(double amount) {
printBanner();
printDetails(amount);
}
void printDetals(double amount) {
System.out.println("name:" + _name);
System.out.println("amout:" + amount);
}
}}
** 動機 [#x1b02594]
長すぎるメソッド、コメントがないとその目的が理解できない...
うまく名前付けされた短いコードが好ましい理由は、
- メソッドの粒度が細かければ、他のメソッドから利用できる...
- メソッド呼び出しがコメント列のように読み取れ、メソッド...
*** 注意点 [#pbfd2411]
メソッドのネーミングは、その長さではなく、メソッド本体の...
** 手順 [#v2c73fbe]
+ 新たなメソッドを作成し、メソッドの意図に合わせて命名す...
-- どんな処理をするかではなく、何をするかによって命名する
+ 抽出されるコードを本のメソッドから新たな抽出先のメソッ...
+ 元のメソッドのローカル変数とメソッドパラメータへの参照...
+ 一時変数は抽出されるコード内だけで使われていることを確...
+ 抽出されるコードがローカルスコープ変数を変更するかどう...
-- 変更される変数が1つならば、抽出したコードを問い合わせ...
-- [[一時変数の分離>リファクタリング/一時変数の分離]]、[[...
+ すべてのローカルスコープ変数に対する処理が終わったらコ...
+ 元のメソッド呼び出しを新しく抽出されたメソッドに置き換...
** コメント [#bac88bee]
#comment
ページ名:
SmartDoc