【C#】if文の書き方

初心者プログラマのころは、なかなか綺麗なソースコードが書けないものです。
でも、そのコードにはある程度のパターンがあって、ちょっとしたポイントを意識すれば、見違えるような綺麗なソースコードになります。

そこで、よくあるコードを参考にしながら、綺麗なソースコードが簡単に書けるようになる方法を解説します。

目次

【C#】初心者が綺麗なコードを書くコツ if文

よくあるコード

よく見るコードです。
if文が凄く長くなっていて1画面内に収まらずスクロールしないとelse部分が見えません。
ひどいものになると、複数のif文が同じような状態になっていたりします。

public bool IsXxxxx()
{
    if (A == B)
    {
        // 処理
        // ・
        // ・
        // ・ 
        // ・
        // ・
        // ・
        // ここにたどりつくまでに処理がたくさんある。
        // 下手をすると、何スクロールもする場合もある。

        return true;
    }
    else
    {
        return false;
    }
}


// ひどいものになるとこんな感じです。

public bool IsXxxxx()
{
    if (A == B)
    {
        // 処理
        // ・
        // ・
        // ・ 
        // ・
        // ・
        // ・
        // ここにたどりつくまでに処理がたくさんある。
        // 下手をすると、何スクロールもする場合もある。

        if (C == D)
        {
            // 処理
            // ・
            // ・
            // ・ 
            // ・
            // ・
            // ・
            // ここにたどりつくまでに処理がたくさんある。
            // 下手をすると、何スクロールもする場合もある。

            if (E == F)
            {
                // 処理
                // ・
                // ・
                // ・ 
                // ・
                // ・
                // ・
                // ここにたどりつくまでに処理がたくさんある。
                // 下手をすると、何スクロールもする場合もある。

                return true;
            }
            else
            {
                return false;
            }
        }
        else
        {
            return false;
        }
    }
    else
    {
        return false;
    }
}

あるべきコード

if文の中に長いコードがあることも問題ですが、elseの部分だけを先に処理してしまえば、マウスホイールをくるくる回して、スクロールしながらelse部分を探す必要はありません。
先に処理できるなら、条件をひっくり返して先に処理するべきです。

public bool IsXxxxx()
{
    bool result;

    if (A != B)
    {
        return false;
    }

    // 処理
    // ・
    // ・
    // ・ 
    // ・
    // ・
    // ・
    // ここにたどりつくまでに処理がたくさんある。
    // 下手をすると、何スクロールもする場合もある。

    return true;
}

まとめ

先に解決できる問題は先に処理するべきです。
そうすると、あとは残りの処理を意識すればいいだけになるので、頭の整理がつきやすいです。

あわせて読みたい
【C#】初心者が綺麗なコードを書くコツ Tips 初心者プログラマのころは、なかなか綺麗なソースコードが書けないものです。 でも、そのコードにはある程度のパターンがあって、ちょっとしたポイントを意識すれば、見...

よかったらシェアしてね!
目次
閉じる