2011-01-19 6 views
0

リファクタリングが何であるか分かりません。どのように使用され、いつ使用されますか? VS2005 IDEを使用してコードをリファクタリングすることでどのように利益を得ることができますか?説明してください。ありがとう。リファクタリング.NETコード

+0

http://en.wikipedia.org/wiki/Code_refactoring – driis

答えて

6

リファクタリングは、メンテナンス性を高めるためにコードを修正することです。の動作が変更されていません。

たとえば、変数の名前を "x"から "employeeCount"に変更して、変数が何を参照しているかを明示することができます。

また、メソッド名を( "Foo"ではなく "GetEmployeeById")より似ているようにメソッドをリファクタリングすることもできます。

また、非常に大きなメソッドをいくつかの小さなメソッドに分割することもできます。

リファクタリングの重要な点は、変更がコードの動作に影響してはならないことです。もしそうなら、あなたは何かをボルケードにした。詳細については

、私は、読みやすさを向上させる複雑さを軽減し、メンテナンス性を向上させるために、このコードをリファクタリングしていhttp://refactoring.com

+0

良い要約。リファクタリングとは、正当性以外のソフトウェア品質の対策を改善することです。 –

1

Code refactoringを参照してください。

リファクタリングはソフトウェアの非機能的な 属性のいくつかを改善 するために、その外部 機能の動作を変更することなく、コンピュータプログラムのソース コードを変更 するプロセスです。利点 ソースコードの保守性を向上させるためにコードの可読性を改善し、 のアーキテクチャまたはオブジェクトモデルよりも表現力の高い内部モデルである を拡張性を向上させるように改善しました。

2

Refactoringは、機能を変更せずにリワークコードです。

これは通常、変数の名前を変更して、ソースを再構成し、大きなメソッドを小さなものに分割し、その他の(内部的な)変更を行うことを意味します。

これはコードを簡素化し、理解しやすくテストします。最終結果は、適切に実行されると、保守し理解しやすい「より良い」コードになります。

Visual Studioには、これを簡単にするためのツールが用意されていますが、自由に使用できます。

1

リファクタリングは、機能を変更することなく、より良いデザインにコードを配置することです。

1

リファクタリングは、それがどのように動作するか変更しないようにコードを変更している、しかしなど、複雑さを軽減し、その読みやすさを変更するには、ヘルパーメソッドを作り、いくつかに大きなメソッドを分割、いくつかに大きなクラスを分割、名前の変更などがあります

変数、メソッド、クラス、そしてコードをもっと分かりやすくするための他の多くのものが含まれています。

Visual Studioには、(他のIDEと同様に)リファクタリングに役立つ変数やメソッドの名前を変更するなど、さまざまなオプションがあります。

コードを理解しにくい、または暗号がわかりにくい、あるいはあまりにも複雑すぎると感じるときは、このコードを使用してください。

1

をご覧ください。このコードは.netではありませんが、あなたはそのアイデアを得るでしょう。

main(){ 
    int x=0,y[14],*z=&y;*(z++)=0x48;*(z++)=y[x++]+0x1D; 
    *(z++)=y[x++]+0x07;*(z++)=y[x++]+0x00;*(z++)=y[x++]+0x03; 
    *(z++)=y[x++]-0x43;*(z++)=y[x++]-0x0C;*(z++)=y[x++]+0x57; 
    *(z++)=y[x++]-0x08;*(z++)=y[x++]+0x03;*(z++)=y[x++]-0x06; 
    *(z++)=y[x++]-0x08;*(z++)=y[x++]-0x43;*(z++)=y[x]-0x21; 
    x=*(--z);while(y[x]!=NULL)putchar(y[x++]); 
} 

リファクタリング。

int main() 
{ 
    printf("Hello, world!\n"); 
    return 0; 
} 
1

リファクタリングは、ユーザー向けではないプログラマ向けです。プログラマーがコードを再編成するのに役立ちます。リファクタリングのプロセスでは、プログラマは変数名を変更したり、クラス名を変更したり、メソッドをほとんど追加したり、クラスを追加することができます。ソフトウェアの機能に変更はありません。

関連する問題