2011-11-27 6 views
6

を扱うガード句/エラーを含む余分な他のブランチは多くの場合、あなたはこのようないくつかのコードを参照してください。アンチパターン:

public void bla() 
{ 
    if (conditionTrue) 
    { 
    // long code here 
    } else { 
    // otherwise do nothing 
    return; 
    } 
    // some more code 
} 

他の支店は明らかに下向きに滑って、いくつかのガード句、ロングコードのインデントです-sectionを平坦化することができます。

public void bla() 
{ 
    if (!conditionTrue) 
    return; 

    // long code here 

    // some more code 
} 

一部の専門家は、支店であれば3、4または5のレベルにこれらの余分をネストすることによって、これを締めくくり、読み絶対に難しいコードを作成します。

私は何とかこの話題に触れて、これらの場所を知っている:

これは名前付き反パターンですか、その名前は何ですか?

答えて

7

は、私は地獄のようにそれを避けるが、そのことについて知らなかった... Arrow Codeアンチパターン

+0

素敵ようなにおいがします。 –

+1

ああ、私はこの種のコードに非常に精通しています: '( – GETah

+0

これはありがとうございます。しかし、実際には、私は説明されたelse-return-situationの名前を探しています。 (言及した)複数レベルのインデント。 – mdo

関連する問題