Idea
【書籍】プログラマーの基礎を「プリンシプルオブプログラミング」で学ぶ!
2025年9月17日
2025年9月20日

こんにちは、けいこんぐらです!
今回は最近買って読んだ本、「プリンシプルオブプログラミング」がとても良かったので、その紹介をしたいと思います!!
- たまたま本屋で見かけて気になった
- エンジニア界隈でよく話題になる有名な本で、気になっていた
じゃあ読むか!
ということで、興味本位で買ってみたところ、読んでみたらすごく良かったです ⭐️
表紙には
3 年目までに身につけたい一生役立つ 101 の原理原則
とありますが、私はエンジニア歴 4 年目なので、ちょっと読むのが遅かったかもしれません、、、笑
まあ、4 年目といえども、個人的にはまだまだ実務でも学びの割合のほうが多く、初心者であることには変わりないと思っているので、この書籍を買ったときは、「これ読んで脱・初心者」してやろうと意気込んで読み始めました!🔥
本の概要
この本は、ソフトウェア開発に関わる上で知っておきたい プリンシプル(原則・思想・習慣など)を 101 個、紹介しています。
端的に表現すると
プログラミングに関するエッセンスの百科事典
という印象です 🔎
基本的な構成としては 101 個のプリンシプルについて、それぞれ
- プリンシプルの名称
- What(プリンシプルの説明)
- Why(なぜそれが必要なのか)
- How(プリンシプルに沿うための指針、どうすればプリンシプルを実現できるか)
- 発展的な内容
- 関連情報・出典書籍・参考書籍
といった内容を紹介しながら進んでいきます。
ただそれだけですが、シンプルで分かりやすくまとまっているため、難しい技術書が苦手な人でも読みやすい一冊です 📚
どんな人が読むべきか
本自体には「3 年目まで」というキーワードがありますが、個人的には 2 年目以降から中級者向けぐらいの本だと思いました!
ある程度のプログラミング経験があって、基礎的な知識は一通り理解(なんとなくでも)している人が読むと、より解像度が高くなると感じています!
実際の実務での、
- あのプログラムはアンチパターンだったなぁ
- あの設計はあまり良くなかったなぁ
- 保守するのに相当苦労したなぁ
とか、そういう具体例をイメージしながら、紹介されるプリンシパルを通して、改善策までイメージできると、より面白く感じれるはずです 👀
また、なんとなくで理解している知識についても、再度言語化された状態で理解できるので、より理解が深まると思います!
じゃあ、初心者向けじゃない という訳でもなくて、そういう概念・考え方があるんだ!みたいな学びにはもちろんなるはずなので、これからプログラミングを本格的に学びたい人にもおすすめできると思います 🔰
エンジニアとして駆け出しの頃から本書の内容を知っておけば、アドバンテージになることは間違いないです!
私も、2 年目の頃とか、もっと早く読んでおきたかった本だと、つくづく思います、、💦
まとめるとこんな感じですかね!!
- 初心者(1 年目ぐらいまで)
- プログラミングの原理原則を学べる!
- シンプルに知識が増える!
- これからの実務にも役立つ!
- 中級者(2 年目以降)
- 実務での経験と照らし合わせて、より理解が深まる!
- より良いコードを書くための指針が増える!
- エンジニアとして知っておくべき内容を言語化された状態で復習できる!
印象的だったプリンシプル
個人的に印象的だったプリンシプルを本書の中から抜粋して一部紹介したいと思います!
本書で紹介されている内容の雰囲気を掴んでいただければと思います!!
1. YAGNI
YAGNI の意味は以下です
- You Aren't Gonna Need It
- それはきっと必要にならない
これだけでも、「うんうん」と思える人も多いのではないでしょうか?
つまり、
将来の拡張性を考慮して、今は必要ない機能を実装しない
という考え方です。
いろんな事態に備えて、あれこれと機能を盛り込んでしまいがちですが、実際にはその機能が使われることは少なく、無駄なコードが増えてしまうことが多いです。
これは経験ある人も多いのではないでしょうか?
2. コードの臭い
「コードの臭い」とは、コードに潜む問題の兆候のことを指します。
コードを生きている人間の体調に例えて、体調が悪いときに感じる「なんとなく調子が悪い」「疲れやすい」「だるい」みたいな感覚を、コードにも当てはめた考え方です。
当然、汚い(臭い)コードは読むのも、修正するのも、大変ですし、バグも発生しやすくなります。
ですので、その「臭い」を嗅ぎ分けて、改善(リファクタリング)をしていくことが重要という考え方です!
本書には「コードの体質改善」とも記載があり、すごくわかりやすい例で、面白いなと感じました!
3. UNIX 哲学
UNIX 哲学とは、UNIX のは以後にある設計の哲学のことで、その中でも 9 つの定理にまとめられています!
↓↓ ウィキペディアにもありますね
- 小は美なり
- シンプルであることは美しい
- 1 つ 1 仕事
- 1 つのプログラムは 1 つのことだけを行うべき
- 即行プロトタイプ
- できるだけ早く、まずは動くものを作る
- レバレッジ・ソフトウェア
- 既存のソフトウェアを活用し、少ない労力で大きな効果を得る
などなど...
本書では本当にいろんなプリンシプルを学べますが、やっぱりシステム開発において重要な考え方は別の似たプリンシパルとして登場してきます。
そん中でも UNIX 哲学は、それらの重要な考え方をぎゅっとまとめたような哲学だと感じ、印象に残りました!
実際、UNIX 哲学を通して、実務でも意識・改善できる部分が多いと思いましたし、実践できるように日々頑張っています!
具体的には、特に設計・プログラミングにおいて、シンプルさ(読みやすさ、修正しやすさ)を意識できるようになったと感じています!
所感 + まとめ
今回はプリンシプルオブプログラミングという本の紹介をしました!
内容自体はシンプルでそこまで深堀っていないため、サクッと読めるのも良い点だと思います!
- 私は、20 分ぐらいの通勤時間とスキマ時間を使って、2 週間ぐらいで読み終わりました!
私は、本書を読んで実務で意識することも増えましたし、より良いコードを書くための指針も増えたと感じています!(読んで本当に良かった!!! 🤩 )
- フォルダの切り方・命名
- 関数の分割の仕方
- クラスの設計の仕方
- レビューの観点
- 保守に対する考え方
などなど
特にコードレビューに関する観点が増えたのは、個人的にはすごくすごく良かったと感じています!
ある程度、有名な本なので、知っている人も多いかもしれませんが、まだ読んだことがない人はぜひぜひ読んでみてください!