オブジェクト指向プログラミング (OOP) のコーディング慣例として広く採用される、SOLIDの原則。
コードの保守性、拡張性、再利用性を語る上では共通言語としても使用される一方で、初学者にとっては決して理解のしやすいものではありません。
これらの原則が抽象的であり、実際のコードにどのように適用されるか・適用した際に得られるメリットを理解するのが難しいことが理解を困難にする一因です。
しかし一度理解すると、SOLID原則が現実世界のありとあらゆる場所で適用されていることに気が付くはずです。
「clean architecture 達人に学ぶソフトウェアの構造と設計」においても、建築家の建築設計とソフトウェアの設計は同じようなものだと示されています。
そこで、本セッションでは、現実世界に潜むSOLID原則を紹介し、SOLID原則を具象と抽象の両側面から解説します。
具象と抽象の行き来によりOOP初学者の理解を促進することを目的としています。
(人間の脳は具体的で具象的な情報を処理しやすい特性があります。そのため、具象的な例や視覚的な要素が組み込まれた話は、抽象的な概念をより身近で理解しやすいものに変換され、学習効果を高めることができます。この人間の脳の特性を逆手に取ったセッションです!)
私自身、OOPに魅了されてからまだ日が浅いですが、その浅さからくる理解の難しさは未だに鮮明に記憶に残っています。
最新の実体験をもとに、SOLID原則への理解に苦しむ初学者に寄り添い、初学者がより理解しやすいセッションを提供したいと考えています。