オブジェクト指向は戦場では必要無し その2
■ このスレッドは過去ログ倉庫に格納されています
0001あたたたた
NGNGを理解する労力が大きく、目的まで達成するのに時間がかかる。
他人のソースを見るにも複雑でときほぐしにくい。
ちゃんと整備されたドキュメントがなければ粗大ゴミソース。
またオブジェクト指向が○○に優れているとかいう話も、あくまでちゃ
んと設計され、ちゃんと実装されたクラスがあるという前提での話。
実際は世の中にどれだけの糞SEや糞PGがいることか。。。
よってオブジェクト指向は戦場では使いものになりません。
前スレ http://pc.2ch.net/test/read.cgi/tech/1011997945/
いつの間にかスレが1000に達しようとしていました。たくさん
の意見ありがとうございます。
前スレでの議論の結果、やはりというか当然というかオブジェ
クト指向の戦場での実績や有効性には大きく疑問が残るという
結果となりました。。。
皆さんも本当に何が残ってゆく技術なのか、何がイマイチぱっ
とせずに中途半端に終る技術なのか見きわめて、技術を習得して
いきましょう。
0153148
NGNGサーブレットならシングルトンが使えるから
「一回ごとに作っては入れなおして消す」
みたいなことしなくていい。
上層ではDBを意識せずOOとして使えるようには組めます。
0154デフォルトの名無しさん
NGNG>○データ重視設計で十分破綻なく設計できる
>○請負や短期派遣で作ってしまうパターンが...
>○オブジェクト指向設計は案外方言が多く統...
3、はあまり実感わかないけど、だいたいその通りっすね。
っつうか小中規模で破綻するような状態では・・・
OOつかおうがなにしようがダメじゃーんって感じで。
0155仕様書無しさん
NGNGこの技術は重要だと思うよ。
見積もり誤りはデスマーチの始まりなのはみんなわかってんだから。
ただ、ソースコードが無い状態でどうやってメトリクスするのか?
OOPの達人たちは何をどうしているのか?
0156デフォルトの名無しさん
NGNG>クラスがただ単にデータの入れものになってしまって
メソッドの無いクラスを作ってはいけないという規則は無いよ。
0157デフォルトの名無しさん
NGNG147その他っす
シングルトンつかって期限つきのキャッシュこしらえて
企業の組織とか、使いまわしきくようなデータは使いま
わす(深いクローンで)設計にしようかと思ってます。
いまのところ。
んで、社員とかもろもろのデータとかは、要求ごとにR
DBから適宜もってきて、部とか課とかに関連づけよう
かという考えなんす。
で、そこらへんの処理するクラスをきりわけておけば、
上層からはDB意識しないですむようになるかな・・・と。
ただ、それなりにメンドクサイなーと・・・
SQLに全条件つっこんで欲しい一覧表形式でデータ取
り出して必要なパラメータだけもったデータクラスにつ
っこんで・・・ってやりたくなっちゃった。
そんな感じっす。
0158148
NGNGDB見るだけなら。
トランザクションだのセッションだのが多いと上層組んで忘れたくなる
けどね。
0159デフォルトの名無しさん
NGNG上層は上層の都合で設計するのは正しい事です。
最初からパフォーマンスを追及するとトンデモOO設計の出来上がり。
パフォーマンスアップにはUnitTestでリファクタリング、これ最強。
0162デフォルトの名無しさん
NGNG判ってくれ!
0163デフォルトの名無しさん
NGNGそういう話はOOとかなんとか以前の問題っすね。
0164デフォルトの名無しさん
NGNGネクタイ締めて、スーツ着てるけど、やってることは
家内制手工業か。エレガントな解法が見つかったとき職を失う。
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNG> とにかく動くこと! これが最低限必要なことなのよ。
当然。そして競争に勝つためにさらに良い方法を目指す。
いつまでも最低限のままじゃだめだよ。
0167デフォルトの名無しさん
NGNGすでに絶版になっているようです。
0168デフォルトの名無しさん
NGNGところで1は、OO自体が有効じゃないというてるの?
>あくまでちゃんと設計され、ちゃんと実装されたクラスがあるという前提での話。
ならOOは有効って意味じゃない?ねぇ?
OOを有効に使えるPG、SEがいないってことと、
OOが有効かどうかってのは別の問題ちゃうん?
どうなの?
0169デフォルトの名無しさん
NGNGことの方が重要じゃねーの。10年SEやっててそう思った。
なにをしたいかってのが判ってない顧客が多すぎるんだよ。イメージ先行で。
0170デフォルトの名無しさん
NGNGはやってるね
0171デフォルトの名無しさん
NGNG矛盾した仕様でコードはかけねーよ。手で出来ないことは
機械には絶対出来ないって。
0172デフォルトの名無しさん
NGNG「仕様は変わるもん」って矛盾した仕様でもとりあえず組む
ってことで言ったんじゃないYO。
0173デフォルトの名無しさん
NGNGよってこのスレ終了 おつかれさまでした〜
0174デフォルトの名無しさん
NGNGとりあえず、一般的なアプリケーションでは
OOは有効という事でいいのかな?
使って間違い無いのはGUI部品だけ。
0176デフォルトの名無しさん
NGNGでも派遣や委託、DQソにやらせるなら、処理の末端部分、つまり
「このフローをココにかけ」レベルまで落とし込んでやらないと
だめ (OO でも実装の末端は細かい処理の集まり)。従って >>1 は
末端のフローしか書かせてもらったことのないドコモ社員。
0177デフォルトの名無しさん
NGNG工程の見積もりはFP法でも使ってくれ。
メトリクスはソースコードが健全かどうかを測るものだ。
例えばリファクタリングの基準に使える。
0178デフォルトの名無しさん
NGNG0180デフォルトの名無しさん
NGNGつーかDQNに仕事やらせちゃ駄目
0182デフォルトの名無しさん
NGNGつーかDQNをプロジェクトに入れちゃ駄目
0183デフォルトの名無しさん
NGNGつーかPMがDQNだからそれ無理
0184デフォルトの名無しさん
NGNGしったか君はプロジェクトでつまはじき。
0185外人
NGNG0186デフォルトの名無しさん
NGNGおい外人、お前らなぁUNICODEみたいな糞規格つくるんじゃねーよ。
0187デフォルトの名無しさん
NGNGおい外人、おまえらの国際化とは ISO-8859-X 圏だけか?
ウワァァン
0188デフォルトの名無しさん
NGNG0189チョソ通信
NGNG0190デフォルトの名無しさん
NGNG話が脱糞してます…
0192デフォルトの名無しさん
NGNG並べるしかできない奴らばっかなんだもん… それ以上の知識
を得ようという奴は少ないし。
手法の問題というより業界意識の問題かな。アウシュビッツも
そうだけど、安定した作業をこなすには考えないで黙々とこなす
事務的な人が必要という罠。
0193デフォルトの名無しさん
NGNG開発=アウシュビッツ論が提出されました。
0194デフォルトの名無しさん
NGNGしれながらユダヤ人を殺害してゆくのではなく、大量のユダヤ人を効率
よく殺してゆくため与えられた作業を黙々とこなす作業員ばかりだった。
# 文才ねぇな、おれ…
0195デフォルトの名無しさん
NGNG経営者がDQNですが、なにか?
0196デフォルトの名無しさん
NGNG顧客がDQNですが、なにか?
0197デフォルトの名無しさん
NGNG小泉みたいなハリボテを支持してしまうDQN国民ですが、なにか?
0198デフォルトの名無しさん
NGNG手続きを順番通りに 並べる方法で使えるからクラスライブラリは便利なのではないのか?
ひとりでやってるならともかく、
そういうふうに下位コーダに作業出来るようにするのが上位プログラマの仕事だろ?
みんながクラス作る側に回ったら、そりゃ船頭多くて山に登ってしまうよ
0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG机上理論野郎だったということだね。
0202デフォルトの名無しさん
NGNG「下位コーダ」とやらにはクラスを作らせない、インターフェイスは変えさせない
って事か?
そういうことやってるから巨大なクラスが出来上がってクライアントからパフォー
マンスでクレームが来るんだよ。
いい加減ウォーターフォールの幻想は捨てろよな。
0203デフォルトの名無しさん
NGNGいや、むしろ逆だろ。
0204デフォルトの名無しさん
NGNG残業は勲章だと思ってる勘違い野郎か?
確かに、
戦争=毎回デスマーチ
と言う意味では未経験だが、何か?
0205デフォルトの名無しさん
NGNGなんで? パフォーマンスに関係する所なんて触らせたりしないよ?
逆に思うんだけど、そんな所まで触らせてまともなものが出来るなんて
よほど良質な下請使ってるんだね。 よかったら紹介してよ
0206
NGNGつい最近DQNの援護射撃で味方撃ち殺しプロジェクトで地獄を見てきましたが何か?
0207デフォルトの名無しさん
NGNG厨にクラス設計させると大変なことになるって…
0208デフォルトの名無しさん
NGNGDQNは通常パフォーマンスに影響しない部分でも激重コーディング
しますが何か?
0209202
NGNG>パフォーマンスに関係する所なんて触らせたりしないよ?
自分をコーダとしか思ってない奴にクラスライブラリ使わせると、とんでもない
ソースを書いてきやがりませんか?
関数呼び出しの感覚で高コストインスタンスをループ中で毎回生成したりとか。
俺はそういう意識の奴が外注で来たら、コードレビュー程度では超えられない溝が
有るとみなして即切り。
逆にその辺がわかってるレベルの外注なら詳細設計を任す事も良くやる。
担当範囲でのクラス新設は自由。もちろんレビューはするけどね。
0210デフォルトの名無しさん
NGNGそもそもDQNは「パフォーマンス」という言葉や意味を知らないのですが、何か?
0211デフォルトの名無しさん
NGNGオレはコーダより上だというレベルでも
とんでもないソースを書いてきやがりますが、なにか?
0212DQNの評価
NGNGOO=自爆テロ
0213デフォルトの名無しさん
NGNGfor(int i=0; i<100000; i++){
Connection c = DriverManager.getConnection();
String s = "SELECT FOO FROM BAR WHERE ID=" + i;
ResultSet r = c.createStatement().executeQuery(s);
r.next();
ret[i] = r.getString(1);
c.close();
}
} catch(ArrayIndexOutOfBoundException ex){
;
}
ループの終了条件は配列外参照という罠。
>>202 はこんなコード見たことないんでしょ (鬱
0216あまりのすばらしさに
NGNG0217デフォルトの名無しさん
NGNG0218デフォルトの名無しさん
NGNGそれなりに実力がある人間なら、ほんっとに開発体制が腐ってると思ったら
この仕事終わったら、転職させてもらいます
とは言えると思うが。(会社を経営してる人間は除く)
0219デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNG”外注は即チェンジ”なんてのたまってられる環境は転職したってそうは見つかるもんじゃない。
その前に、そんなせりふが出るような人間に プログラマーとしての能力は認められても
マネジメント能力は期待出来ない。 それだけの人間だと思われてるよ。
0221俺なら市中引き回し
NGNGすばらしぃ・・・間違いなく俺の拳がコーダーの顔面を直撃しているだろう。
0222デフォルトの名無しさん
NGNGおれのコードだ!
0223202
NGNGなんで?
外注のレベルが低いのは俺の責任か?
無理してDQN外注使って後で責任追及されるのは俺なんだから、早めにリスク回避
するのが当然だろ。
もしかしてDQNを更正させるのもマネジメントの一部なのか?
0225デフォルトの名無しさん
NGNGもらうっての良いんじゃない?
つうかこれはちょっとやばすぎるだろ…
オチはコピペで大量生産と睨んだ。
0226デフォルトの名無しさん
NGNG0229デフォルトの名無しさん
NGNGすこしいいすぎたよ。すまんな
外注を好きに選べる今の環境は幸せだと思うよ。大事にするといい
0230デフォルトの名無しさん
NGNGコネクションプーリング関連でサーバにすさまじく負荷をかけると思われ。
0231デフォルトの名無しさん
NGNGれば、そりゃ能力がある外注は別のところに逃げるって。
0232213
NGNG> オチはコピペで大量生産と睨んだ。
当たり。元々はいくつかの処理を走らすと開放されないDB接続が
発生していたので調査したしたのが事の始まり。もうびっくりと
いうかなんと言うか、マジ笑えました。とはいえ一応親会社みたいな
ところから頼み込んで入ってもらった人達なので切る事もまま
ならず、結局資料まとめてた新人に修正させました (俺も手一杯
だったし)。こんなすごいお方たちにクラス分割なんて申し訳なくて (;´д`)
0233213
NGNG・配列に値をとるのに毎回 SQL を投げている (配列は 200 個)
・配列外参照でループを抜けるときにクローズされない
・その他の例外でもクローズされない
・ちゅうかそもそも配列外参照でループ抜けるな
・規約に入ってたトランザクション分離レベル設定も自動コミット設定も無視
が正解 (他にある?)
0235デフォルトの名無しさん
NGNG値を「一個一個」とってる奴。今はもういないが (藁
0236っていうか
NGNG0237213
NGNG「動かしてて遅いと思いませんでした?」
「アハハ♪ボクのマチン、セレロン 500 に Win98 でしたから♪」
鯖・側・で・動・い・て・ん・だ・よ、カ・ス!!
ダブルクリックが好きな奴らでな、ウィンドウの×ボタンをダブル
クリック、[スタート] メニューをダブルクリック、OKボタンも
ダブルクリック…。結局こいつらのためにダブルクリックするだけ
で必要なファイル全部コンパイルするバッチファイル書いてやったさ、
おー書いたとも。なんか文句ある?あーーーーーすっきり!
0238デフォルトの名無しさん
NGNGワロタ
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNGあたりだね。ドキュソにDriverManagerを直で触らせるような状況に
した人がわるいきもする。バカにバカコードを書かせない技だね。
0241デフォルトの名無しさん
NGNGだとするとOOなんてまともに普及するわきゃねーんだよ。
本国アメリカでもなんだかんだいって同じようなもん
0242213
NGNGDriverManager ってのは本当はデータソースです。
奴らって何?一人じゃないの?そんな事すんのは。
0244お好み醤油
NGNG「要は適当な回数だけ回してえ、query投げてテキトーに配列に入れときゃいいんでしょ」
っていう感じ。
とても日常的というか素人的なんだけど、
でも、人間がいちいち最適なループ構造を考えなきゃいけないような
現在の大部分のプログラミング言語ははっきりいって不完全だと思う。
こういう、最適化をまったく考えられないような素人が書くコードでも、
そこそこまともに動くようなフレームワーク(言語とか概念とか)を
作っていかないとソフトウエア業界は近い将来立ちゆかなくなるだろう。
0245244
NGNG0246213
NGNG質的に VBそこそこC少々×1 + VB厨完全体×2 という感じ
(後で分かった)。本業務から外れたメンテナンス機能だった
のでこっちも少々油断しすぎていた (藁。まぁコードはかな
り簡略化したけどね、フロー的にあんな具合に動くよ。
0247デフォルトの名無しさん
NGNGSmalltalkのenumeratingメソッド群、もしくは
Iteratorパターンを覚えよう!
0248デフォルトの名無しさん
NGNG> ソフトウエア業界は近い将来立ちゆかなくなるだろう
RDBMS なんかは、ある意味で「素人が書くコードでも、 そこそこまともに動くような
フレームワーク」ではあるんだけどね。
OS もデバイスドライバもなし RDBMS もなしって状況で、ファイルシステムを一か
ら実装するのに比べれば、既存の RDBMS を使うのは遥かに楽だし。
0249デフォルトの名無しさん
NGNGそういうやつって、外注全体のうちどのくらいいるんだろ…
ロジックのコストとかに脳みそがいかない人がいるっていうのは、言語
使える使えないと全く違う話だというのは、最近ワカタヨ。
Cを10年やってるベテラン扱いの人が一緒に仕事してるんだけど、確かにCで
コードはかけるんだけど(Javaの仕事なので、CっぽいJavaコードをかかれるが)、
そういうところが腐ってる人がいるよ。おいらが、ソイツのコードを全部チュー
ニングしなおししてるよ。ソイツは俺の倍給料貰ってるよ。理不尽ダーヨ。
0250デフォルトの名無しさん
NGNGOSとデバドラがあって、ローカルディスクが使えるなら、
なるべくファイルシステム使うようにして欲しいよ。
0252デフォルトの名無しさん
NGNGトランザクションと同時アクセス対応が難しいっス。
50万件のレコードを許容時間内に検索するコード書けませン。
デッドロック時がきついっス。
でも不必要に DB 使うのはどうかと思う今日この頃。
# 1 から Oracle を作ったら米国の国家予算が丸ごと必要
# だっつう話をどこかで聞いたような
■ このスレッドは過去ログ倉庫に格納されています