Visual StudioでC#をコーディングする際の便利な機能に#regionがある。エディタ上でコードを折りたためる機能だ。これを使うと現在のプログラムで関係ない部分を隠すことができ、一画面内でプログラムの全容が把握しやすくなるというメリットがある。
しかし#regionにも欠点があり、多用すると可読性の低いコードが出来上がってしまう。具体的には以下のような使い方だ。
✕空のregion
中身を開いても何もコードが書かれていないregion、開く時間を浪費させるしスペースも取る。
✕既読region
既読マークでもつけたかのように書き終わった箇所にどんどんregionを付けていく。1メソッド内にregionが乱立してしまい非常に読みづらい。
✕コメントregion
処理の説明をコメントしてくれるregion、もちろんコメントに置き換えたほうがよい。
個人的に#regionを使いすぎてコードの可読性が落ちないように以下のことを心がけている
○メソッド内にはregionを貼らない。
regionを貼るということはメソッドが長く一画面に収まらないことを意味する。regionを貼ってメソッドを短く見せるよりも、メソッド分割を行い短いメソッドを目指すほうが可読性向上につながる。
○100行程のクラスにはregionを貼らない
コード量が2,3画面程度ならregionを貼らないほうが、可読性は上がる。
○抽象的すぎるまとまりでregionを貼らない
例えば「public method」のような抽象的すぎるまとまりでregionは貼らない。regionは冗長な記述や類似したメソッドの集まりで利用する。