オブジェクト指向は戦場では必要なし。そんな風に考えていた時期が俺にもありました。


@ITの例の記事スラドで盛り上がっていたのでコメントしてみた
だけど、日本語が破綻したのに加えて内容があまりにもアレで、
ここはお前の日記帳ではないんだ、プログにでも書いてろと言われそうなんで先回りしてブログにも書いとく。

↓予想される未来

      r;ァ'N;:::::::::::::,ィ/      >::::::::::ヽ
.      〃  ヽル1'´        ∠:::::::::::::::::i
       i′  ___, - ,. = -一   ̄l:::::::::::::::l
.       ! , -==、´r'          l::::::/,ニ.ヽ
      l        _,, -‐''二ゝ  l::::l f゙ヽ |、 ここはお前の日記帳じゃねえんだ
        レー-- 、ヽヾニ-ァ,ニ;=、_   !:::l ) } ト
       ヾ¨'7"ry、`   ー゙='ニ,,,`    }::ヽ(ノ  ブログにでも書いてろ
:ーゝヽ、     !´ " ̄ 'l,;;;;,,,.、       ,i:::::::ミ
::::::::::::::::ヽ.-‐ ト、 r'_{   __)`ニゝ、  ,,iリ::::::::ミ
::::::::::::::::::::Vi/l:::V'´;ッ`ニ´ー-ッ -,、:::::`"::::::::::::::;゙ ,  な!
:::::::::::::::::::::::::N. ゙、::::ヾ,.`二ニ´∠,,.i::::::::::::::::::::///
:::::::::::::::::::::::::::::l  ヽ;:::::::::::::::::::::::::::::::::::::::::::/ /
::::::::::::::::::::::::::::::!  :|.\;::::::::::::::::::::::::::::::/ /

オブジェクト指向は戦場では役に立たない。
そんなふうに考えていた時期が俺にもありました

構造体の延長として作った set/get しまくりのクラス。
関数ポインタで作ったオレオレ仮想関数。
構造体を第一引数に渡した オレオレthis。
継承をむやみに使いまくって、追いきれなくなったゴミコード。

オブジェクト指向なんて誰も必要としていない。
Bjarne Stroustrup インタビュー (?)をガチだと信じていた時期さえありましたw
http://www.kh.rim.or.jp/~nagamura/misc/stroustrup-interview.html [rim.or.jp]

そんな風にOOをdisっていたら、とある恩師に、こんなこといわれました。
キミがC言語を理解して使いこなすまでに何年かかった。
そうか3年ぐらいかかったか。
C++は、Cと似て異なる別の言語だ。
だから、キミがC++を理解して使いこなせるようになるまではC言語を使いこなせるまでにかかった3年ぐらいはかかるよ。

それから、いやいやC++を利用してゴミコードを量産していたのですが、3年ぐらいすぎたあるときから、急にOOで書くのがすごく楽になりました。

恩師の言葉は事実だったんだなと思いますた。
何がいいたいかというと、非OOの言語になれまくった人がOOを理解するのには、
非OO言語を使いこなしたぐらいの時間がかかるんぢゃないのというお話ですた。

めでたしめでたし。
#3年もかかったのは馬鹿といわれそうですが、アホなんで許してください。