1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

初心者が保守性の高いプログラムを書くために注意するべきこと

Pocket

はじめに

わかりやすいプログラムを書けていますか?わかりにくいプログラムは保守性を低下させ、バグを生み出す温床になってしまいます。他のエンジニアの方やあなた自身を困らせないためにも保守性の高いコードを書きましょう。

この記事では、プログラミング初心者の方のために保守性の高いプログラムにするための注意点を解説しています。

その1:わかりやすい命名にする

プログラミングでは、変数名やメソッド名、クラス名など命名をする箇所がいくつもあります。”名は体を表す”と言われるように、対象を端的に表したわかりやすい命名をする必要があります。例外的に、for文のインデックスなどは慣例に従って「i,k,j…」と命名します。 極端に長過ぎる名前や曖昧な名前、連番など混乱を招く命名を避けましょう。チーム内で合意している場合は別ですが、命名はなるべく英語で行うべきです。

ローマ字読みは長くなりがちで読みにくいので、英語の方が簡潔に表せます。英語が苦手な方は、英辞郎などのオンライン辞書を活用することをオススメします。

その2:似たようなコードを増やさない

ほとんどのプログラムは、似たような処理を複数箇所で行います。その都度コードを書いていてはプログラムが冗長になり、保守性を低下させてしまいます。なぜなら、似たような処理は共通の理由で変更される可能性が高いからです。似たような処理はメソッドにまとめ、引数などで動作を変更できるようにするとよいでしょう。

最近では多くの言語に関数型の機能が取り入れられていますので、より柔軟なメソッドを記述できます。

その3:コメントを書く

難しい処理にはコメントを書いておくと後で修正する際に役に立ちます。

ただし、あくまで補助的な役割にするべきです。

コメントで説明する前提でコードを書いてはいけません。コードでどうしても明示的に示せない部分のみをコメントで説明するべきなのです。コメントは自動でコードと同期してくれないため、コメントが多すぎると逆に修正の手間が増えてしまいます。コメントが放置されて陳腐化する可能性も高まりますので、コメントは必要最小限に留めましょう。

わかりきったことをコメントに書くのもNGです。

その4:トリッキーなコードを書かない

自分の実力を示したくてトリッキーなコードを書いてしまうことはありませんか?技巧的なコードはわかりにくく、後で自分が読んでもすぐに理解できないことも少なくありません。実務はプログラミングコンテストではないため、凝ったテクニックを駆使する必要はありません。誰にでもわかりやすい一般的なコードを心がけましょう。

その5:マジックナンバーを埋め込まない

プログラム中には、数字や文字列、正規表現などのリテラルを数多く使います。リテラルを直接記述してしまうと、それが何を意味するものなのかわかりづらくなってしまいます。

リテラルは定数などに割り当て名前をつけておくべきです。または、設定ファイルに分離してまとめておくのも有効な方法です。こうしておけば後で変更もしやすく、一箇所にまとまっているのでファイルを行き来する必要もありません。

その6:イディオムに従う

イディオムとは慣用句のようなもので、決まりきったパターンを意味します。各プログラミング言語には複数のイディオムが存在しており、多くのエンジニアに使われています。わかりやすいだけでなく、検証されていてバグが起きる可能性が低いというメリットもあります。イディオムを学ぶには、他の人が書いたコードを読むとよいでしょう。

たとえば、公式ドキュメントのサンプルコードやオープンソースのコード、技術書のコードなどです。イディオムを覚えておくとコードを早く書けるので、生産性もアップします。自分が使う言語のイディオムだけでもおさえておきましょう。

まとめ

コードは書いたら終わりではありません。たいていは開発期間よりも保守期間のほうが長くなりますから、コードは書かれてからが本当の戦いだといえます。わかりやすいコードを書き、他のエンジニアから一目置かれるようなプログラマーになりましょう。

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

おすすめスクール

全国30校舎で展開されるヒューマンアカデミーのWeb講座は修了者数4万人超、講師とカリキュラムの満足度がどちらも9割を超えています。就職や転職に必要なレベルの実務スキルを身に付けられます。

初心者がプログラミングで挫折しない学習方法を無料動画で公開中。オンラインに特化したプログラミングスクール「TechAcademy(テックアカデミー)」が解説。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

イチ押しランキング

1リナックスアカデミー

リナックスアカデミー

2システムアーキテクチュアナレッジ

システムアーキテクチュアナレッジ
ページ上部へ戻る