未解決
nyamanyama千葉県 プログラマー 経験5年目

可読性の高いソースコードの書き方について

992ページビュー1コメント

私は5年ほどプログラマーとして働いていますが、効率的なプログラムを書くことができずに悩んでいます。一応、想定通りに動作はするのですが他人が見るととても複雑に見えるようでよく「もっと簡潔に書けるだろう」と言われてしまいます。なのでソースコードレビューでもレビュアーに処理の説明をするのに苦労しています。
また、不具合が発生した時も処理が複雑なせいで対応が大変です。
効率が良く、可読性の高いプログラムの書き方についてコツなどがありましたら是非教えて頂けないでしょうか?

  • 1グッド!
    コースケプログラマー

    どれだけきれいなコードでも、他人が書いたコードというのは読みづらいものですが、私の職場でソースコードが綺麗だなと思う人に共通していることは2点あります。クラスやメソッドが細かく切り分けられておりコードが肥大していないこと、プリミティブ・文字列型(stringやint)をメソッドの引数に直接渡さずにクラスを作成してラップして渡していることです。

    nyamaさんのコードがどんなふうにプログラムを書いているのかわかりませんので、指摘内容が間違っていたらすみません。

    nyamaさんがレビューしてくれる人に処理の説明をするのに苦労するということですが、メソッドの行数が数百行あったりしてませんか?1つのメソッドにいろんなことを詰め込んでいるせいで、人に説明するのが困難になっている可能性があります。

    クラスやメソッドの行数を100行までに抑えるなど意識して行数を減らすことで、自然と粒度が小さくなり可読性の高いコードが書けるようになります。不具合が発生した時でも粒度が小さいとテストがしやすいので対応も楽になります。

    2点めの引数にプリミティブ型を使わないというのは、stringやintの代わりにBooksやStockなどのクラスを作成してラップしてやれば、引数の意図が伝わりやすくなります。是非試してみて下さい。

    回答のURL
Banner 02Banner 02 sp