プログラムの可読性は何故大事か?


「可読性」という言葉があります。
これは読んで字の如く、プログラムがいかに読みやすいか、という意味ですが、可読性の高いプログラムの作成は思ったよりも大変です。

まず、読みやすいコードはどのような利点があるでしょうか?

メリット1 機能の拡張や修正が容易
お仕事では、自分が作成したプログラムを自分がずっと面倒を見る、なんてことは殆どなく、他の人が保守をします。
その際に自分が書いたプログラムが見にくければ、その保守をする方が大変なのは言うまでもないでしょう。

例えば機能を拡張したい、となった時に、「どこをどう変更すればいいか分からない」という状況は困ります。
また、何かバグが出た場合も、コードが見やすければ原因の解明も多少楽になります。

趣味で作成したプログラムであっても、見やすいコードは重要です。
というのも、自分で頑張って書いたプログラムであっても、時間が経てば忘れてしまう為です。
久しぶりに何か機能を増やしたいと思ったは良いものの、コードが汚いためモチベーションが下がる、ということはよくあります。

メリット2 パフォーマンスの向上
意外に思うかもしれませんが、長期的な目で見れば、見やすいコードはパフォーマンス面でも優秀です。
見やすく、見通しの良いプログラムであれば、効率的なアルゴリズムの採用がし易いという理由です。

長期に渡り保守や拡張を重ねていると、どうしても効率的でない処理や、冗長な記述が紛れ込んでしまいます。
見やすいコードであれば、そのようなミスを減らすことができますし、場合によってはそもそものアルゴリズムや処理を考え直すことも可能です。

実際の例として、Cで書かれたプログラムをPythonで書き直したが、逆に実行速度が向上した例もあります。

メリット3 開発時間の短縮
「プログラマはコードを書く時間よりも、読む時間の方が長い」というような言葉をよく聞くかと思います。
どのような形であれ、コードを読む時間は非常に多いです。
プログラムのコードですから、読むだけでなく当然理解することが必要になりますが、見やすいコードとそうでないコードでは、必要な時間が大きく変わります。

仕事では「納期」が存在しますし、趣味であっても時間を無駄にしたくはありません。
時間が余れば、その時間を別のことに使用することができます。

メリット4 再利用が容易
可能であれば、過去に作成したプログラムを再利用したいと思うことは当然です。(したくても、できない状況もありますが…)
ですが、過去のプログラムをコピー、ペーストしてすぐに使える状況ばかりではありません。
場合によっては修正をしたり、必要な部分だけを抜き出す、といったことを行いますが、見やすいコードであればその作業も比較的容易です。
「過去に作ったプログラムを流用しようと考えたが、コードが汚く、どうしようもないので結局作り直した」という経験がある人もいることでしょう。

ここまで、読みやすいコードのメリットについてでした。
では、読みやすいコードにするにはどうすればいいでしょうか。

読みやすいコードと言っても奥が深く、紹介するとキリがありませんので、基本的なことを紹介します。

コーディング規約を守る
例えば、
・クラス名はClassNameのように大文字で始まり、単語毎に大文字にする
・変数名はinput_valueのように、小文字で始まり単語の間には_(アンダーバー)をつける
等の命名規約であったり、
・他モジュールのインポートは、そのモジュールの最初にまとめて行う
といったコードを書くためのルールです。

これらはプロジェクトや会社で定められていることもあれば、言語の一般的なスタイルとして採用されていることもあります。

適切な名前をつける
クラスや関数、変数、モジュール、パッケージ等の名前は重要です。
これらは一目で、大体の内容が解かるものにする必要があります。
あまり抽象的ではなく、具体的で、処理内容に沿った名前がベストです。
また、短い名前はタイピングが楽ですが、意味が分かりづらい場合は多少長くても具体的な名前を付けましょう。

コメントをつける
コメントは非常に大事です。
そのクラスや関数がどういったものかを簡単に説明したり、プログラム中の処理の流れを説明したり、注意点などを書きます。

例えば、
print("Hello world")
という処理があった場合に、「これはHello worldと表示します」なんてコメントは付けないでしょう。
明らかに一目で解かる処理にはコメントをつけず、要点だけに絞り、簡潔に書くことが大事です。
書けば書くほど良いというものではなく、不要なコメントが多ければ、コードが読みづらく、邪魔になってしまいます。

綺麗なプログラムを書くには、コードを読み、そして書くことが一番です。
良いプログラムを見かけたら、積極的に真似をしていきましょう。


関連記事一覧

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

we love develop
アプリやシステムの開発を通じて、お客様のビジネスを成長させることが私たちのビジネスです。お気軽にお問い合わせください。
 お問い合せ

お電話でのお問い合わせはこちらから
TEL:03-5297-2871

メールマガジンの登録

キャパでは誰かに話したくなるようなIT小ネタを、週に一回メルマガで配信しています。
ぜひ購読してみませんか?
 購読する

ホワイトペーパーの入手

ITブログ月間20万PV達成!自社オウンドメディアの運用ノウハウを無料公開しています。
 ダウンロード

記事カテゴリ記事カテゴリ

月別投稿記事

PAGE TOP