はじめに


どーも、学生エンジニアのゆうき(@engieerblog_Yu)です。
突然ですが
- コードが汚い、見づらいと言われたことがある
- プログラミングは正しい結果が返ってきさえすればいいと思っている
方はいませんか?
実際私もそうでした。
大学の課題ではコードの美しさはあまり問われないことが多く、答えの数値がちゃんと出力されたら単位がもらえました。

正しい結果が出ていればそれでいい!
と突っ走っていました。
しかし実際にエンジニアとして働こうと思うと正しいプログラムを書くだけでは全然ダメなのです。
なぜならエンジニアとして働くためには
他の人が自分が書いたコードを理解して、保守・運用していかなければならない
からです。
他の人が自分のプログラムを理解する時間を短縮することは会社の利益になります。
今回紹介するリーダブルコードではこのように明記されています。
コードは理解しやすくなければいけない
本書ではエンジニアとして働くために必要な他の人が理解しやすいコードを書く秘訣を4部に分けて解説しています。
本書を読めば
- コーディングの概念が変わる
- 美しいコードが書けるようになる
- エンジニアとしてのスキルアップができる
こと間違いなしです。

それでは内容に移っていくにゃ〜
こんな人におすすめ

- エンジニアになりたい方
- コードが汚い、見づらいと言われる方
- プログラムがうまく実行できればいいと思っている方
今回は上記に当てはまった方におすすめの記事です。
本の内容のまとめ

リーダブルコードでは理解しやすいコードを書くための4つのセクションを構成しています。
- 表面上の改善
- ループとロジックの単純化
- コードの再構成
- 選抜テーマ
についてです。
これだけではわかりにくいと思うので今回は私が特に有用だと思った実践テクニックについて紹介していこうと思います。
名前に情報を詰め込む

もちろんですがコーディングをする時には変数や関数、クラスに名前をつけなければなりません。
それらの名前を何にしようか迷ったことはないでしょうか?
例えば
偶数→even_number
最大値を返す関数→get_max_number()
などです。
しかしこれらの名前をつける際には6つのルール(テクニック)があります。
- 明確な単語を選ぶ
- 汎用的な名前を避ける
- 抽象的な名前よりも具体的な名前を使う
- 接尾辞や接頭辞を使って情報を追加する
- 名前の長さを決める
- 名前のフォーマットで情報を伝える
例えば
Size()よりHeight()の方が明確(Sizeだけでは何を表しているかわからない)
tmpやretval,fooという汎用的な意味のない変数よりsum_squaresなどの意味を持った変数の方が良い
ミリ秒を表す変数名の後には_msなどの単位を付け加えた方が良い
変数を用いるスコープが大きい場合には変数の名前が長くなってでも、より情報を増やした方が良い
定数やローカル変数、メンバ変数をフォーマット(大文字,小文字,_など)で区別する
と言ったことです。
他に書いてあること
今回は紹介しきれませんでしたがリーダブルコードには他に、以下のことが書いてあります。
- 美しいコードの書き方
- 理解されやすいコメントの書き方
- 読みやすい制御フローの書き方(if,for,while)
- 読みやすい変数の使い方
- 巨大なコードの分割方法
- 読みやすいテストコードの書き方
あわせて読みたい
おわりに

今回はエンジニアになりたい大学生向けにリーダブルコードを紹介しました。
- コーディングの概念を変えたい
- 美しいコードを書きたい
- エンジニアとしてのスキルアップをしたい
と思っている方はぜひ読んでみることをおすすめします。

他にもいろんな投稿があるにゃ。
コメント