プログラミングにおける中括弧の位置

プログラミングのスタイル

プログラミングにおける中括弧の位置

中括弧の位置はどこに書く?

私は趣味ではC#を書き、会社でJavaを扱っています。そのため2つの言語の書き方で違いがいくつかあるんですよね。
まえにプログラミングの命名規約についてまとめました。こちら
今回取り上げる書き方の違いは中括弧の位置です。

クラスやメソッドなどは中括弧「{}」で囲って処理を記述しますが、みなさんはコードを書くときどこに記述しますか?
2つの例を書いてみましょう。

 class Sample
 {
    // ここに処理を記述
 }
        
 class Sample {
    // ここに処理を記述
 }
        
このように2種類の書き方があると思います。
中括弧の「{」の位置が違いますね。クラスやメソッド名の横に書くか、改行して真下に書くか
私は、改行する記述方法の方が多いです。VisualStudioの初期設定がこちらなんですよね。そのためC#を書いている人は改行している人が多いと思います。
調べたところ、この書き方にはそれぞれ名前がついているらしく、「BDS/オールマン・スタイル」と「K&Rスタイル」と言うらしいです。


2つのスタイルの違い

この2つのスタイルの違いは何か、
ざっくり言うと { の位置が違うだけです。
先ほどは数行しか書かなかったが、長文のコードを書いていると見た目が大きく変わってきます。

  • BDS/オールマン・スタイル
  •  class Sample
     {
        public static void Main( string[] args )
        {
            for(int i=0;i<5;i++)
            {
                if(i != 0)
                {
                    // ここに処理を記述
                }
                else
                {
                    // ここに処理を記述
                }
            }
        }
     }
                    

  • K&Rスタイル
  •  Class Sample {
        public static void Main( string[] args ) {
            for(int i=0;i<5;i++) {
                if(i != 0) {
                    // ここに処理を記述
                } else {
                    // ここに処理を記述
                }
            }
        }
     }
                    

同じ内容を書いているのに、BDS/オールマン・スタイルでは15行、K&Rスタイルでは11行です。
if文を書くとだいぶ変わりますね。特にelseを挟むと長くなりますね。
この2つの違いをまとめると、
  • BDS/オールマン・スタイル
  • 行間が空くためコードが見やすくなる。
    行が長くなってしまう。

  • K&Rスタイル
  • 行が短く済む。
    コードが詰まってしまう。

こんな感じです。どうですか?
私は個人的にBDS/オールマン・スタイルが好きです。
行は長くなってしまいますが、行間があるため見やすい気がするんですよね。


まとめ

という風に中括弧の書く位置に違いがありました。
C#ではBDS/オールマン・スタイルでJavaはK&Rスタイルというのが多いのでしょうか?
恐らくIDEの設定の違いだと思いますが、、、
一人で開発している分にはどちらで書いてもいいと思いますが、会社などで共同開発をしている時はスタイルなど決まりがあると思うのでそれに従うしかないですね。
皆さんはどちらのスタイルがいいですか?(使っていますか?)
少し内容が薄い気もしますが、今回はこの辺で、ではまた!

コメント

このブログの人気の投稿

PowerAppsで座席表を作成する

Power AutomateでTeamsのキーワードをトリガーにする

Power Automateで文字列抽出