[Quora] 他人の書いたコードを読むコツは?

Quora回答シリーズです。

質問

他人の書いたプログラム・コードを読むのが苦手です。なにかコツやアドバイスをいただけませんか?

https://qr.ae/pNsn8j

プログラムは様々な思考の塊なので、書いた人が何を思って書いたか推理する必要が大なり小なりあるんですよね。その推理量を減らせるかがポイントかもしれません。

回答

私も苦手ですw というよりは得意な方や好きな方は貴重かもしれないですね。

コツとしてはいきなりコードを読まないことではないでしょうか。例えば以下のように全体の構造がわかる情報や資料があれば事前に頭の中に入れておくと多少は改善されると思います。

  1. 作成者や理解者が近くにいる場合は設計した際の「考え方」「構造」を教わる。
  2. クラス図、シーケンス図、ER図などがあれば先に読み込む
  3. 詳しい設計書やテーブル定義などは上記のあとで読む(先にコードに取りかかってもOK)

コードが分からなくなるのは自分自身が迷子になっている可能性が高いです。自分は今どこでどういった役割の部品を読み解いているのか、立ち位置が分かるとスルスルっと読み解ける場合があります。前述の情報やドキュメントは「地図」や「コンパス」だと思ってください。

またプログラミングは「定型文」を使い回すことが多くあります。デザインパターンやよく使うアルゴリズム、データ構造などは空いた時間などで学習されると、「あ!これ進研ゼミでやったところだ!」状態になれるかもしれません。

https://bokete.jp/boke/45909580 より

最後になりましたが基本的な文法や、プログラミングの基礎的な作法などは丸暗記しているのが前提です。毎回Googleで検索しているといくら時間があっても足りませんからね。