所感
本書のおかげで私はオブジェクト指向(OOP: Object-Oriented Programmingの略)のとっかかりを得ることができた。以下に本書から得た知見をまとめる。
- 現実世界との比喩によってクラスを設計することはできない
- OOPの3大要素(クラス、ポリモーフィズム、継承)
- OOPは構造化プログラミングの延長線上に必然性を持って生まれた
しかし、これらの点を抑えただけではデザインパターンは理解できないし、優れた設計を行うことも難しい。本書の内容を押さえた上で、自分の手を動かしてOOPの理解をさらに深めていく必要がある。
1について
本書で特に強調している点だ。ちょっとクドいくらい説明してくれる。この点がOOPに誤解を招く最大の元凶だと著者が考えているからだ。
2,3について
どういう点がOOPが構造化言語と異なるかはこの3大要素を把握することで理解できる。
また、構造化プログラムのどのような欠点があって、それを補うことができるのがOOPという点もおさえることができた。
これらの点を理解できたことが私のOOPの土台を作った。
動機
入社2年目の頃、私には作りたいシステムがあった。しかし、プログラミングの経験は浅く、どのようにプログラムをモジュール化し、システムを構築すればよいか分からなかった。基本情報技術者試験の勉強をする中でOOPという言葉は知っていた。JavaScriptの勉強をする中でも継承などのOOPの機能はプログラミングにおいて有用だと分かった。そんな中、OOPについて学ぶ機運が高まっていった。
ネットでの勉強の限界
オブジェクト指向について適当にググりながら勉強していたが、抽象的で捉えどころのないテーマであり、いろんな意見も散見され、なかなか理解できなかった。
本は閉じた内容であるが故に、一貫した内容であり、OOPを体系的に理解するためには、本で基本を身に着ける必要があった。優秀なエンジニアが選ぶ本のランキングを参考に適当に本を買いまくった。その中の1つが本書だ。
著者
平澤 章
新品価格 |
コメント