ご紹介書籍
『脳に収まるコードの書き方 ―複雑さを避け持続可能にする』
出版社:マーク・シーマン
みなさんは総数何万行くらいのソースコードのプログラムを扱ったことがあるでしょうか?
月へ行ったアポロ宇宙船の誘導コンピュータは当時32歳だったマーガレット・ハミルトンさんがプログラムを1人で書いたと言われています。
その行数は約65,000行、誘導コンピュータ専用のアセンブリ言語で書かれていました。
ソフトウェア工学という考え方そのものがなかった時代の驚くべき偉業でした。
本書は、能力に差はあれども、一人の人間が把握するには巨大になりすぎたソフトウェアをいかに分割し、その全体像を把握することによって、効率よく持続可能で保守しやすいコードを書くための心構えや手法を断片的に紹介しています。
ポイントは、単純に量を少なくシンプルにするのではなく、人間の脳の仕組みにあった構造でシステムを構成することにあります。
読みやすいコード、メンテナンス、つまりは保守性の高いコードなどについては多くの書籍で紹介されていますが、本書は少し違った切り口で、人間の記憶量が少ないことや、記憶がそれほど信頼しきれないこと、忘れてしまうことなどを考慮しています。
- チェックリストを作る:気を配る要素や、忘れてはいけない要素をチェックリストにしておく
- バーティカル(垂直)スライス:ひとつの機能をUIからバックエンドまで一通り実装したものをひとまとめにして把握する
- カプセル化:APIなどを設計したりコードを書く場合、どれだけ中身の情報が外に漏れないように隠すか
- 把握すべき項目:脳に収まるコードの機能や要素は7つまで。これは人間の短期記憶として一般的に言われる限界値です(個人差あり)
ここで紹介されている内容は、巨大なシステムを設計したり、開発する際に大いに役立ちます。
ただし、必ずしも全ての人、全ての事象に役立つわけではないので適材適所で扱うと良いでしょう。
コードは、書いたり書き直したりするよりも、読む機会のほうが多く、元のコードを書いた本人ではない他の人が読んだり修正することも十分に考えられます。
過去の自分は、そのコードを書いた時の記憶を忘れ去っているかもしれず、本書では2週間後の自分でもわかるように、複雑さを排除したり、適切なコメントを記入しておくことが推奨されています。
本書のノウハウをもとに、さらに自社内、チーム内、ご自身の中で「脳に収まるコード」の最適解が導き出せると良いかもしれませんね。
本コラムの更新案内を
メールでお届けします
本コラムは、IT業界で働く皆さんに役立つ書籍をわかりやすく紹介するコラムです。
業界内で話題になった本、最新技術を紹介している良書、知識として身につけておいて損はない情報、
IT業界での働き方や仕事の仕方に役立つ書籍を厳選して紹介するものです。
連載コラム:今すぐ読むべき、仕事に活かす書籍紹介
「巨人の肩の上に立つ」という言葉があります。これは先人の積み重ねた発見に基づいて何かを発見する、先人の知識や経験のおかげで、自分はまだ小さいけれど高いところから見渡せるようになるという比喩です。
本コラムでは、IT業界で働く皆さんにとっての巨人となるべく、業界内で話題になった本、最新技術を紹介している良書、知識として身につけておいて損はない情報、IT業界での働き方や仕事の仕方に役立つ書籍を、比較的新しいものからチョイスして紹介するものです。
お問い合わせ