本当にオブジェクト指向プログラミングっていいのでしょうか?
いつもお世話になっております。
VC++初心者です。
現在、VC++6.0、MFCのソース修正で四苦八苦しています。
(コーディングするよりも。ソースを追うので苦労してます。)
(初心者の私が言うのも難ですが、オブジェクト指向云々言う前に
ソースのif文節が異常に長かったり、3重以上ループが出てくると
とても嫌になります、、、)
一般的(?)に、プログラミングは
手続き型プログラミングよりオブジェクト指向プログラミングが
開発効率がよい、と重宝されているようですが、
どうも納得できていません。
(その手の書籍を2,3冊読みましたが消化不良に終わっています。)
個人的には、手続き型プログラミングの方が好きです。
というのも、慣れているからかもしれませんが、
ソースが追いやすいし、見やすいと思います。
逆にオブジェクト指向プログラミングでは、
・継承されすぎると、基本クラスまで追うのが一苦労。
・インスタンスをつくってから、関数を呼ぶのが面倒な気がする。
(手続き型なら関数呼び出しのみで済みます。)
・インスタンスをdeleteし忘れて、メモリを圧迫する危険がある。
(ガーベージコレクションというものもあるようですが、
どこで何を消しているか不安です。)
・ソースを追いにくい(慣れの問題なのでしょうか、、、)
そこでですが、
「手続き型は~~で大変だけど、オブジェクト指向ならこんなにすばらしい」
というような対比的に具体例を挙げて説明されている
書籍、サイトの紹介、または、よい助言を頂けませんでしょうか。
また、上記に伴い、
・手続き型で組んで失敗した例(オブジェクト指向型にすれば良かった例)
・オブジェクト指向型で組んで失敗した例(手続き型にすれば良かった例)
も宜しければ教えて頂きたく、お願いします。
(成功例のみよりも、失敗からの成功例を教えて頂けると嬉しいです。)
長くなりましたが、宜しければご教授下さい。
補足
回答ありがとうございます。「関数」はデータを取り扱う機能で,「オブジェクト」はデータとそのデータを取り扱う機能をまとめたものということでしょうか?