>>185
(ある種の)if文を書かなくてよくなることがOOP最大のメリット。(俺主観)
if (商品->{種別} == A) { 処理1A(商品) } elsif (商品->{種別} == B) { 処理1B(商品) }
...
if (商品->{種別} == A) { 処理2A(商品) } elsif (商品->{種別} == B) { 処理2B(商品) }
みたいなコードがあちこちにあった場合、商品の種別が変更される毎に、悪夢のような修正が待っている。
そもそも0から書く場合でも、いちいちif文をずらずら並べるのはものすごく面倒くさい。
ところがOOPで書くと、そもそもif文自体が不要になる。
商品->処理1;
...
商品->処理2;
こうなると、商品の種別に変更があっても、呼び出し側を修正する必要性を大きく減らすことができる。(※正しく設計すれば)
なにより、面倒くさくないのが良い。