トップページ⇒tech
968コメント317KB

オブジェクト指向は戦場では必要無し

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001あたたたたNGNG
オブジェクト指向はより自然なモデルに即したものではあるが、
クラスを理解する労力が大きく、目的まで達成するのに
時間がかかる。他人のソースを見るにも複雑でときほぐしにくい。
ちゃんと整備されたドキュメントがなければ粗大ゴミソース。
またオブジェクト指向が○○に優れているとかいう話も、あくまで
ちゃんと設計され、ちゃんと実装されたクラスがあるという前提での話。
実際は世の中にどれだけの糞SEや糞PGがいることか。。。
よってオブジェクト指向は戦場では使いものになりません。


0918907NGNG
>>917
それってただの Mediator パターンじゃないの?
0919デフォルトの名無しさんNGNG
AOP ってのは 「エージェント指向」なのか「アスペクト指向」なのか
はっきりさせてくれ。
区別がつかないなら中途半端な略語つかうなや。
0920デフォルトの名無しさんNGNG
>>912
もう一つ、良く引き合いに出されるのはキャッシュ処理とか遅延生成かな。

class Foo
{
  bool initialized;
  void init();
public:
  void method1()
  {
    if (!initialized)  // これを書くメソッドごとに全部書くのはダサい
      init();      //
    real_method1();
  }
};
0921デフォルトの名無しさんNGNG
Anti Objective Programming
0922デフォルトの名無しさんNGNG
>>910
非 OOPL のアスペクト指向拡張だと AspectC なんつーのがありますな。
OS のキャッシュ処理を局所化するのに使ってみました、みたいな論文を
読んだ覚えがある。
0923デフォルトの名無しさんNGNG
>>912
MixJuiceって知ってます?
http://www.etl.go.jp/~epp/jp/mj/
コレはエージェント指向なんですか?
0924デフォルトの名無しさんNGNG
>>918
俺もそう思う。crosscutting の意味を読み違えてるんじゃないかなぁ。
0925907NGNG
>>923
なんでそこでエージェント指向が出てくる??
念のために書いておくけど、
AOPと書いたらそれは AspectOP のことだと解釈して
(除 913,917 何故なら 905 に対するコメントである 907 に対するものだから)
エージェント指向のことはエージェント指向としか書いてないよ。
0926デフォルトの名無しさんNGNG
>>898
>うちのメインアーキテクト。

こいつ↓か?
http://pc.2ch.net/test/read.cgi/tech/1011997945/691
0927デフォルトの名無しさんNGNG
>>869
言い訳は判る。
 いきなりUMLやらいう図見せられたって寄せ集めのプログラマの殆どは判らない
 そんな連中に2ヶ月の期間はオブジェクト指向を学んで実践するには短すぎたという
 しかし、オブジェクト指向を使わなくても、普通にやれば2ヶ月で出来る程度の仕事だったのも確かだ。
 フォームや出力の数は多かったとはいえ、 現実にそこはN88BASICで作られたプログラムでそれま
 で満足していたのだから。正直、俺が自分でやってれば一人で2ヶ月で出来てただろう。

 もちろん、俺が一人で出来るのはOOPのお陰というのは確かだから、OOPの技術は評価する。
しかしOO設計分析は評価出来ないし、さらには、それを自分の売込文句、宣伝文句に使って必
要以上に背伸びしようという人間性はもっと評価出来ない。

OO設計だの分析だのいう連中の正体はいまだにフローチャートを書けといってくるクライアント
と同じくらいのもんだ
0928 NGNG
ああ、エージェントとアスペクト取り違えてた。
どっちにしろ、OOのような淫嗣邪教はどうでもよい。
0929デフォルトの名無しさんNGNG
>OOのような淫嗣邪教はどうでもよい。
はは
0930919NGNG
>>928
だと思った。
0931907NGNG
>>928
(´Д`;)
0932デフォルトの名無しさんNGNG
>>927
文章の飛躍が激しくて、ついていけない。。。
0933デフォルトの名無しさんNGNG
アスペクト指向って何すか?
0934デフォルトの名無しさんNGNG
>>933
過去ログをちろっと読んで Let's google!
0935デフォルトの名無しさんNGNG
翻訳してみる

 1、 マネジメントまで考えると、短期間のドカチンな仕事にゃOO設計はダメだよ
    だって、廉い人材じゃOO設計についてけないもの

 2、 という現実もしらないでOO設計だなんだと売込む連中は信用出来ない

 3、 今だにフローチャートかならずよこせという会社があるように UMLもあと
    10年もすると、そんなもんなんだろなあ
0936デフォルトの名無しさんNGNG
OOは手法としてまだ発展途上なんだろ? 普及率低いし。
0937デフォルトの名無しさんNGNG
>>936
デザインパターンもできたし UML も定型化してきたし、
もう大体完成だろう、普及率はまた別。
0938デフォルトの名無しさんNGNG
発展途上って、、、じゃあ、いつになったら完成するんだよ。
OOはプログラム作る上での手段以上の意味は無いと思うが。
なんでもかんでも何かに当てはめてくって、無理があるだろ。
0939デフォルトの名無しさんNGNG
>>937
デザパタはあんまり関係無い気がするが?
0940デフォルトの名無しさんNGNG
>>939
メリットだとは思うけどね。

実際 C でプログラミングしてる場合とか、内部構造を説明するのに苦労する
のが

 App と UserInterface が mediator ね

で済むこともあるし。
0941デフォルトの名無しさんNGNG
いや、OOとデザパタは関係無いと言ってるんだけど
0942デフォルトの名無しさんNGNG
>>941
GoF のデザパタは関係がそれなりにあるだろう。
一般論としてのデザパタはそうじゃないだろう。
0943デフォルトの名無しさんNGNG

OOとある意味対極にある関数型でもデザパタは使えるよ
0944 NGNG
>廉い人材じゃOO設計についてけないもの

つまるところ、企業ベースではOOだと生産性は上がらないと。
0945デフォルトの名無しさんNGNG
>>920
そんな書き方するか?普通こうじゃないか?

説明の必要ないところは省略して書くよ。

class LazyHogeProxy implements HogeInterface{

 private Hoge impl = null;

 private Hoge getImpl(){
  if(impl == null)impl = new Hoge();
  return impl;
 }

 public Hage hogeFunc(){return getImpl().hogeFunc();}

}

0946デフォルトの名無しさんNGNG
>>936

普及率が低いのは構造化すらまともに理解してないDQNのせい。
COBOLerまで含めるような母集団のとり方にも問題があるんだよ。
0947933NGNG
>>933
http://www.race.u-tokyo.ac.jp/~yoshimi/AOP/index-j.html

> つまり、ある抽象化はあるアスペクトをう まく捉え十分に動いても、
> 他のアスペクトでは同じようにうまく捉 えては動かないでしょう。

この一言でアスペクト指向にハマったかも…
0948デフォルトの名無しさんNGNG
OOPの普及率が上がっているように見えたら、それは単にプログラマの絶対数が減ってるだけです。
0949デフォルトの名無しさんNGNG
>>941
???何だって?
GoF本の正式名称しってるか?
オブジェクト指向における再利用のためのデザインパターン
( Design Patterns Elements of Reusable Object-Oriented Software )
だぞ?

まぁ、最近はイディオムまで XX パターンみたいな呼び方をつけるのが流行ってるけど。
0950デフォルトの名無しさんNGNG
なんか新スレが立ったみたい。

オブジェクト指向は戦場では必要無し その2
http://pc.2ch.net/test/read.cgi/tech/1013266554/l50
0951デフォルトの名無しさんNGNG
このスレでもアンチOOは論破されてるのか...
0952デフォルトの名無しさんNGNG
>950
つーかキミがたてたんだろ?ん?
0953デフォルトの名無しさんNGNG
>>951
アンチOO==構造化すらまともに理解してないDQN

の場合が多いからな。
0954 NGNG
OO派は最後まで意見を言わなかったね。
叩くだけで。
0955デフォルトの名無しさんNGNG
アンチは途中で OO 派が何言ってるかわからなくて逃げ出したね。
煽るだけ煽っておいて。
0956デフォルトの名無しさんNGNG
アンチOO派が意見を言わなかったからね。
叩くだけで。
0957デフォルトの名無しさんNGNG
>>954
理解できなかった、の間違いなんじゃないのか。

まぁ途中から AOP なんて割と新しい話になっちゃったから、話についていけなくて
も仕方ないが。(ソフトウェア工学に興味がなけりゃ、ふつー AOP なんて知らんわ
な)
0958デフォルトの名無しさんNGNG
それって、知ってる単語全部並べて意味不明の文書いてた奴の事か?
逃げたんじゃなくて無視されたように見えたけど。
0959デフォルトの名無しさんNGNG
結局、アンチOO派が叩いたのは、最後まで、自分自身だったね。
0960デフォルトの名無しさんNGNG
AOPは一度スレ立ったけどなぁ
http://pc.2ch.net/test/read.cgi/tech/1004962559
0961デフォルトの名無しさんNGNG
そろそろ結論を。

 火を噴いたプロジェクトの消火に、後付けでオブジェクト指向を持ち込んでも
 解決しない。むしろ悪化するからやめとけ。

オブジェクト指向プログラミング自体の有効性に関しては、スレ違いだからどう
でも良いやってことで。(おれは OO 派だけど)
0962 NGNG
戦場を「火のついたプロジェクト」にすり替える卑怯な論法でしかない。
戦場とは実務を指す。
0963デフォルトの名無しさんNGNG
>>962
じゃあ言い直そう。
OOは戦場では非常に有効だが、バカには使いこなせない。

さらに、バカを再教育する事は不可能。労働活動家みたいに
勉強から逃げ回るから。
0964デフォルトの名無しさんNGNG
>>962
という事は常に OO は有効だという事でこのスレは終わるのね。
0965デフォルトの名無しさんNGNG
OOPは使わない奴も使えない奴もバカだが
オブジェクト指向設計は 客が頼めばやればいい事。 自分からやる奴はバカ
0966デフォルトの名無しさんNGNG
OO の恩恵を直接受けるのはお客さんじゃないのに…
0967デフォルトの名無しさんNGNG
>>965

封印スレだからといって煽りの練習に使うのはどうかと思うぞ。
0968デフォルトの名無しさんNGNG
>>965
実生活も暗そうな奴だな(w
レス数が950を超えています。1000を超えると書き込みができなくなります。