ここでは、コードを書くときに意識しておく基本的なルールをまとめます。
本記事の目的・学習目標
コード記述の基本的な考え方
コードは「動けばよい」だけではなく、
分かりやすく、安全に動くことが重要です。
そのため、次の点を意識して書きます。
数値を直接書かない
数値をそのまま書くと、意味が分かりにくくなります。

この「3」が何を表すか分かりにくい状態です。
このような数値は「マジックナンバー」と呼ばれます。

意味が分かるようにしておくことが重要です。
そのためには、
- コメントを付ける
- 変数名を具体的にする
といった工夫を行います。

このような書き方では、何の時間なのか分かりません。
たとえば、休憩時間であれば

のように、内容が分かる名前にします。
変数名を具体的にすることで、コードの意味が読み取りやすくなります。
定数として定義する
同じ値を何度も使用する場合は、定数として定義します。
定数とは、途中で値が変わらない値のことです。
定数にすることで、値の意味が分かりやすくなります。
また、値を変更する場合も、1か所の修正で済みます。
定数を定義する方法には、#define を使う方法と、const を使う方法があります。
#define

#define は、書いてある名前を数値に置き換える仕組みです。
プログラムの中の REST_TIME は、コンパイル前にすべて「3」に置き換えられます。
const

const は、値を変更できない変数として扱う書き方です。
通常の変数と同じように使えますが、あとから値を変更することはできません。
どちらも、数値に意味のある名前を付けるために使用できます。
このように名前を付けておくことで、
ただの「3」ではなく、「休憩時間の3」であることが分かりやすくなります。
エラーを考慮する
プログラムでは、常に正しい値が渡されるとは限りません。
想定外の値が来ると、プログラムが停止してしまう可能性もあります。
そのため、不正な値を前提にチェックを行う必要があります。

また、データが取得できない場合も考慮します。

NULLというのは何も指していない状態を表します。
NULL である場合の処理を作成し、使用する前の確認を行うことで、エラーを防ぐことができます。
読みやすい構造にする
処理を一度にまとめて書くと、流れが読み取りにくくなります。
そのため、処理の役割ごとに分けて書くことが重要です。
まとめて書いた例

この書き方でも動作はしますが、
「配列から取り出す処理」と「表示する処理」が1行にまとまっています。
処理を分けた例

このように分けて書くことで、
- handleで番号を決める
- titleにデータを取り出す
- 取り出したデータを表示する
という流れが分かりやすくなります。
大きなプログラムになるほど、このように処理を分けて書くことが重要になります。
また、記述の形を揃えることも重要です。
括弧の位置を揃える

このように {} の位置を揃えて書くことで、
処理のまとまりが分かりやすくなります。
まとめ
今回の学習内容は次の通りです。
- 数値は意味が分かる形で扱う
- エラーを考慮してチェックする
- NULLを確認する
- 処理を分けて書く
- 括弧の位置を揃える
※本記事ではコード記述の基本的な考え方を記載しているため、具体的な決まりがあるわけではありません。
本記事で登場した用語
本シリーズでは、記事で登場する専門用語を補助知識カテゴリの「④-4 用語辞典」 にまとめています。
①変数名
値を扱うための名前で、内容が分かる名前を付けることが重要
②コメント
コードの意味を補足するための説明文
③エラー
想定していない値や状態によって、正しく動作しないこと
④NULL
データが存在しない状態を表す値
⑤インデント
コードの行頭を下げて、処理のまとまりを見やすくする書き方
⑥ブロック({})
処理のまとまりを表す記号
⑦マジックナンバー
コード内に直接書かれた数値のうち、何を表しているのか意味が分かりにくい数値のこと
関連記事
次の記事では、C言語の基本的な型(詳細) について解説します。
▶ 次の記事
C言語入門:④-2 C言語の基本的な型(詳細)【補助知識】
◀ 前回の記事
C言語入門シリーズ:④-0 補助知識【概要】
◆同じカテゴリの記事一覧(概要ページ)
C言語入門シリーズ:④-0 補助知識【概要】
◆シリーズの記事一覧
C言語入門シリーズ:プログラムの基本構造【記事一覧】

[…] C言語入門:④-1 コード記述にあたってのルールまとめ【補助知識】 […]
[…] C言語入門:④-1 コード記述にあたってのルールまとめ【補助知識】 […]