インデントが大切ってよく耳にするけど、そもそもインデントって何だろう?
初心者向けに簡単に教えてほしい…
上記のお悩みを解決します。
■本記事の内容
本記事で以下の内容をお伝えします。
・プログラミングのインデントルールについて
・フォーマッターを利用しよう
■本記事の信頼性
この記事を書いている私は、プログラミングを仕事として始めて10年以上ほど経ちます。今も現役のシステムエンジニアです。
インデントはプログラミングの読みやすくするための手法の一つです。
プログラミングをする上で必ずといっていいほど必要になります。
もしかしたら無意識で行っているかもしれませんが、これを機にどういったものかを学んでいきましょう。
プログラミングのインデントとは?
インデントとは字下げのことを指します。
例えば、以下のようなif文を記載するときに処理の段落を下げることが多いと思います。
おそらく本などの教材でも以下のような感じになっているかと思います。
if(条件){
処理1
処理2
処理3
}
この処理1~3が字下げされていることをインデントといいます。
本などの教材でも特に説明がなくてもこんな感じになっています。
さらにif文が中に入ると以下のようにさらに字下げします。
if(条件1){
処理1
処理2
処理3
if(条件2){
処理4
}
}
上記のようにどんどん中の階層ができていくイメージです。
このような階層構造のことをネストといい、日本語で入れ子ともよばれます。
これらのネスト構造で階層が分かりやすくするためにインデントつまり字下げして読みやすくするといった形です。
例えばインデントがなかったらどうなるでしょう。
if(条件1){
処理1
処理2
処理3
if(条件2){
処理4
}
}
どうでしょう?上記でもちゃんと動きますが読みにくいかと思います。
まだ、処理として少ないのでなんとか読めますが、これが長い処理だった場合は混乱してしまいます。
プログラミングは基本的にチームで行うことが多いです。もちろん自分が作ったプログラムを他人が修正したりすることもあります。
もし自分が分かればいいやっていう感じにインデントをさぼっていると、他の方が見たときに処理を読むのに時間がかかります。
おそらく自分も見にくいと思うので、無意識でできるようになっていたほうがいいでしょう。
プログラミングのインデントルールについて
プログラミングのインデントですが、字下げする際に色々と方法があります。
仮にインデントできていたとしてもこれらのルールを守らないとあまり意味がないです。
タブまたはスペースを使用するのが一般的
インデントつまり字下げする際には、下げるための文字を入れる必要があります。
基本的にはタブか半角スペースです。
タブはキーボードの左上の方にTabというキーがあります。スペースは真ん中下の細長いキーです。
タブを一つ打って字下げするか、半角スペース2つないし4つ挿入して字下げすることが多いです。
ただ、上記を好きなようにしてもいいというわけではなく、どれか一つに決めたらすべてそのルールを守るべきです。
あるプログラムはタブ、また別のプログラムはスペースといったことはやめましょう。
どちらを使用すればいい?
では、タブまたはスペースどちらを使えばいいかというところですが、これは案件によって変わります。
というよりも決め事なのではじめにどれにするか決めるといった形です。
プログラミングする際はだいたいコーディング規約というプログラミングをする上でのルールをまとめたものがあります。
このコーディング規約が会社によったり、システム開発するチームによったり、または使用するプログラミング言語によっても変わることが多いです。
なので、自身がチームリーダーとかでないかぎり、だいたいがルールとして決められているのでそれに従いましょう。
フォーマッターを利用しよう
プログラミングのインデントや、コーディングの書き方を自動で補正してくれるツールが存在します。
これをフォーマッターといいます。
フォーマッターを使用することで、インデントしていないコードも自動で綺麗にインデントしてくれる機能です。
その他にもif文の条件等でよく使う等価演算子にスペースいれたりなど読みやすくするために綺麗に整えてくれます。
以下のような感じですね。
// フォーマット前
if(a===b){
処理
}
// フォーマット後
if (a === b) {
処理
}
スペースが間に挟まることで見やすくなります。
このようにコードの読みやすさのことを可読性と呼び、プログラミングをする上で可読性を上げることは必須だと思ってもらったほうがいいです。
基本的には、自分で無意識でやってることも多いですが、自動フォーマットは便利ですので実施しておくといいでしょう。
今、使用しているプログラミング言語とコードフォーマッターと入力して調べれば方法がたくさんでてくるでしょう。
最後に
プログラミングのインデントについて最後にまとめると以下の通りです。
・インデントはスペースかタブのどちらか
・フォーマッターが便利
自分で見たときも見にくくなるので意図的にそうする人も少ないです。
コメント