web-dev-qa-db-ja.com

関数の一部を取り、それの個々の関数を作成するプロセスをどのように呼びますか?

技術用語があったことは知っています。何だったのか思い出せない。

タイトルを明確にする必要がある場合は、次のようにします。これが古いコードの場合:

Result foobar(Param1,Param2,Param3) {
  code that does abc
  code that does xyz
  code that does asdf
  more code that does something
}

そしてそれはに変更されました:

SomeResult do_xyz(SomeParams) {
  code that does xyz
}
Result foobar() {
  code that does abc
  do_xyz(args);
  code that does asdf
  more code that does something
}
8
bitmask

これの専門用語は抽出メソッドです

http://www.refactoring.com/catalog/extractMethod.html を参照してください

フラグメントを、名前がメソッドの目的を説明するメソッドに変換します。

void printOwing() {
    printBanner();

    //print details
    System.out.println ("name:    " + _name);
    System.out.println ("amount    " + getOutstanding());
}

 http://www.refactoring.com/catalog/arrow.gif

void printOwing() {
    printBanner();
    printDetails(getOutstanding());
}

void printDetails (double outstanding) {
    System.out.println ("name:    " + _name);
    System.out.println ("amount    " + outstanding);
}
21
herby

プロセス自体はコードと呼ばれリファクタリング、メソッドは呼び出されますExtract Method、およびSRP(単一責任の原則)をコードに適用するのに適しています。

8
Yusubov