オブジェクト指向はよく難しいと言われる。
難しい概念だから、良くない概念だと思ってしまいがちだし、
それを振り回している奴らは鼻持ちならないように見えるかもしれない。

しかしオブジェクト指向はプログラミングの方法論ではなく、
プログラム設計の方法論なのよ。(※OOPはOOの実現方法でしかない)

プログラミングができるようになっても、
うまく設計することがいかに難しいかは、
業務でプログラムしている人なら知っているでしょう。
それなら方法論がある程度難解になるのは
仕方がないということを悟るべき。

幸い、オブジェクト指向は、これまで生まれてきた
設計手法に比べて単純明快。
オブジェクトに仕事を委託しよう、
オブジェクトが作業する手段として関数と変数を所有させよう、
オブジェクトは契約を守ろう、というだけのもの。
(正確な表現じゃないけど、解りやすいでしょ?)