オブジェクト指向は戦場では必要無し その3
■ このスレッドは過去ログ倉庫に格納されています
0001うつつつつ
NGNG引き続きOO厨とアンチOO厨の血で知を笑う戦いきぼ。
その1 http://pc.2ch.net/test/read.cgi/tech/1011997945/
その2 http://pc.2ch.net/test/read.cgi/tech/1013266554/
0655644
NGNG色々かな。
デバッグが終ったソースで弄るのがメンドクサイ時はアセンブラソース吐かせて、
スタックフレーム弄ってコルーチンにしてる。
つまりクラス内にスタック用のエリアを取っておいて、BP/SPをそっちに切替えておく
で、PutDataとかのメソッド内で これをもう一度切替えるというか交換するようにする
でも、API呼び出しがメソッド内であるとダメね
未デバックだとそんなこと毎回やってられないから なんとか書き換えるけど
0656デフォルトの名無しさん
NGNG再利用なら昔からしてるよ。ライブラリとかいう形でね。
あとはパターンだね。考え方、テクニックの再利用。
ソースコードの再利用は考えないほうがヨシ
XPとかの本でも、そう言ってるし。
0658デフォルトの名無しさん
NGNG新しいOSリリースするたびに一から作り直してたんじゃないのか?
0659デフォルトの名無しさん
NGNG> 新しいOSリリースするたびに一から作り直してたんじゃないのか?
Windows NT 3.x, NT 4.x, 2000, XP と全部スクラッチから書いたっつーことは
あるまい。
0660デフォルトの名無しさん
NGNGフルスクラッチなんてことはあるわけない。
0661デフォルトの名無しさん
NGNG0662デフォルトの名無しさん
NGNG0663デフォルトの名無しさん
NGNG0664
NGNGプログラムを組むたびに1から作りなおしていたのです。
オブジェクト指向の登場で初めてプログラムの部品化、再利用が可能となりました。
0665デフォルトの名無しさん
NGNG0666664の続き
NGNG素直に受け入れてくれません。
多くのプログラマーは具体例で示しても
「そういう事は今の言語でもできる」などと躊躇して技術を学ぶ姿勢を
見せません。
何故こういう事態になるのでしょうか?
それは旧来タイプのプログラマーは職人気質の人が多く、
ソフトウエアの生産性・再利用には無関心だからです。
オブジェクト指向はやる気のある人間の居る会社でしか受け入れられないという
壁に突き当たっています。
日本のソフトウエア産業の振興の為にもこうした壁を取り払わなければ
なりません。
てな事をOO初期のセミナー屋は言っていた。
詐欺だつうの。
0667デフォルトの名無しさん
NGNGそれなら clibを利用する事も再利用だぞ
0668
NGNG再利用で生産性上がってないの。
FWは商売になってないし。
0669デフォルトの名無しさん
NGNG思いっきりなってんだろ
FW自体が無料と商売になってないはまったく別だぞ
0670デフォルトの名無しさん
NGNG本当の理由
1.既にシステムを作る方法を一つ手に入れていて、それを使えば
困らないのに、今更新しいものを覚えるのが面倒くさいから。
2.胡散臭いから
1はともかくとして、2は、今まで実務の実績も経験もないくせに
偉そうにOOを語っていた詐欺師紛いのエバンジェリストなヤツラ
の責任だよな。金だけ湯水の如く請求するくせに、コストパフォー
マンス悪すぎなヤツラ。さらに、成果が出ないのを客の能力の
せいにするアフォ。そんなのばっかり。
0671
NGNG0672デフォルトの名無しさん
NGNG今の高級言語並の生産性はあった。 ただし熟練者ご用達って事。
0673デフォルトの名無しさん
NGNG0674デフォルトの名無しさん
NGNG0675デフォルトの名無しさん
NGNG0676デフォルトの名無しさん
NGNG煽りにしても頭悪すぎ。
0677デフォルトの名無しさん
NGNG歩調乱すなよ!
もうちょっと我慢したらもっと大物が釣れたのにぃ。
0678デフォルトの名無しさん
NGNG>今の高級言語並の生産性はあった。
ネタ?
0679デフォルトの名無しさん
NGNGライブラリをしっかり整備しないといけなくて、
なおかつ熟練者じゃないといけない
って生産性悪いって言わないか。
0680デフォルトの名無しさん
NGNGこんな感じといいたいんだろう。
人数の分布は・・・・
0681デフォルトの名無しさん
NGNG考えやすくなったのでは?
あとOOならではテクニックあるし。
ライブラリに関しては昔も今も変わらずって感じがする
0682デフォルトの名無しさん
NGNGありえない。
汗でhellowold書いてみればわかる。
汗のみでソフトウェア開発は無理。
特にx86は死ぬ。
0683デフォルトの名無しさん
NGNGでも上じゃないとねー
0684デフォルトの名無しさん
NGNG0685
NGNG0686デフォルトの名無しさん
NGNGx86、asmでソフトウェア開発してます。但しwin32 + masm。
Cで書くのと殆ど差は無いです。
0687デフォルトの名無しさん
NGNGBIOS に文字列へのポインタ渡すだけだよ?
0688デフォルトの名無しさん
NGNGそれは「私はCが苦手です」と言っているのと同じ事では?
0689デフォルトの名無しさん
NGNGヒューレットパッカのスタック電卓って知ってる? 1+1を 1 ent 1 + って入力するやつ
会社の先輩にあれでなければ電卓使えない人がいるよ
Cのa=b+cで書くより アセンブラで考えた方が楽な人もいるって考えたらいいんじゃない?
アセンブラなら 上で出てる メインーサブルーチン関係に縛られない書き方も自由だしね
0690686
NGNGどれ位で苦手って言うのか知らないけど、win32プログラムは
基本的にAPI叩くだけだから言語は何でもあまり関係無いのでは。
特にmasmはあまりにマクロが強力で、Cで書くのと差は殆ど感じないよ。
まあC++は苦手だけどね。
0691デフォルトの名無しさん
NGNG>689
私もその一人、逆ポーランドというの。forthなんて言語も同じね。
実は慣れると、(1+2)*(3+4)みたいな演算が、読んだとおりに入れればいいのよ(1に2足して3に4足したものをかける-> 1 ent 2 + 3 ent 4 + *)。実に楽。
「アセンブラで考えたほうが楽」とは別の話。あなたがHPの電卓の背景にある体系を知らないだけ。
>688
そもそもCは高級アセンブラっていうぐらいだから、基本的には素養は同じ。
アセンブラも高級言語化してるしね。逆にアセンブラもかけないCプログラマのほうが問題じゃないの。
ただ、Intel系の場合、レジスタの個性を知る必要があるので、その意味では大きく違うが。
0692デフォルトの名無しさん
NGNG「プログラミング言語でみる性格判断」
* C
他人のプログラムは決して信じない。ライブラリは自分でつくるものだと思っている。
* C++
自己主張がなく、まわりに流されやすい。
* Java
俗物。熱しやすく、冷めやすい。
* BASIC
間違った基礎教育を受けた。もうやり直しがきかない。
* Perl
おたく。変態。奇才。
* AWK
詩人。夢想化。複雑な仕事には向かない。
* SmallTalk
理想主義者。現実を認めようとせず、箱庭に楽しみを求める。
* Prolog
論理主義者。哲学者。地に足がついていない。
* LISP
変人。協調性がなく、常に自分が正しいと思っている。
* COBOL
がんこで融通がきかない事務屋。すぐ昔話をする。時代に取り残されていることに気がついているが、自分ではどうすることもできない。
* FORTRAN
実験派の研究者。数学的・物理的な美しさは求めるが、プログラミングの美しさは求めない。
* FORTH
人間的な美しさよりも、機械的な美しさを求める。
0693デフォルトの名無しさん
NGNGCもC++もJavaもPerlもAwkもPrologも使う漏れって・・・
0694デフォルトの名無しさん
NGNG* Delphi 独立独歩
0695デフォルトの名無しさん
NGNG他人のプログラムは決して信じずまわりに流されやすい俗物。おたく、変態で地に足がついていない。
0696デフォルトの名無しさん
NGNG他人のプログラムは決して信じず、まわりに流されやすい俗物。
複雑な仕事には向かず、おたく、変態で地に足がついていない。
awkが入ってなかったヨ。
0697デフォルトの名無しさん
NGNG0698
NGNG0699デフォルトの名無しさん
NGNG0700デフォルトの名無しさん
NGNG>
>間違った基礎教育を受けた。もうやり直しがきかない。
これは性格診断か?(w
0701デフォルトの名無しさん
NGNG0702デフォルトの名無しさん
NGNG0703デフォルトの名無しさん
NGNGasmが無いYO!
0704デフォルトの名無しさん
NGNGここがマ板とム板に別れた頃にそんなスレッドあったよ。
0705デフォルトの名無しさん
NGNGすべてを把握しないと気がすまない超管理主義者。付き合う人間は一苦労。
0706デフォルトの名無しさん
NGNG俺アセンブラ使いだけどOO的設計 管理が面倒だから
行き当たりばったりで思いついたところからかけるアセンブラが好き
0707デフォルトの名無しさん
NGNG>行き当たりばったりで思いついたところからかける
アセンブラなら許されるってもんじゃないと思うぞ。
OOPLだって行き当たりばったりにクラスを書くことは出来る。
0708デフォルトの名無しさん
NGNG0709デフォルトの名無しさん
NGNG0710デフォルトの名無しさん
NGNG0711デフォルトの名無しさん
NGNG0712デフォルトの名無しさん
NGNG0713デフォルトの名無しさん
NGNG0714デフォルトの名無しさん
NGNGるーちん・くらす・こんぽーねんと
がでてきたあ
0715デフォルトの名無しさん
NGNG0716デフォルトの名無しさん
NGNG方法論ばっかやってる連中にありがちだねえ。
俺も一度見たことあるけど、全部捨てさせた。
0717デフォルトの名無しさん
NGNG藁
0718デフォルトの名無しさん
NGNG最悪なのは複数人とか クロス開発でテスト環境がしっかりしてないとかで
「この部分をブラックボックスとして」
いきあたりばったりでやった場合だね。
0719デフォルトの名無しさん
NGNG一人がチンタラとクラス設計してるうちに俺がコーディング
始めて、結局おれがクラス設計が終わってないうちに
100%コーディングを済ませたことがある。
0720デフォルトの名無しさん
NGNG相方は719が作ったコードのクラス設計を理解した?
0721デフォルトの名無しさん
NGNG漏れのはクラスじゃない。
数千行程度のプログラムならサクサク書いたほうが
早いってことよ。
0722デフォルトの名無しさん
NGNG0723デフォルトの名無しさん
NGNG今はそれで良くても仕様変更があったら719しかそのコードいじれなくなるよ。
そんなにサクサク作れるスキルがあるならペアプロとまでは言わないけど、相方に
設計を説明しながら作ればよかったのに。
0724デフォルトの名無しさん
NGNGいると便利。けど、よそ様にはお見せ出来ない。
作ってる暇があったら、先に仕様書書けゴルァ。
0725デフォルトの名無しさん
NGNG俺はこれ作ればそれで終わり。
管理まで頼まれてねえや
0726デフォルトの名無しさん
NGNGSmallTalkじゃなくてSmalltalkね。
ところでSmalltalkもCもJavaもやる俺の場合は一体
俗物なのか理想主義者なのか、はっきりしてくれい。
0727デフォルトの名無しさん
NGNG> ところでSmalltalkもCもJavaもやる
ふつー、多言語を使う。
0728デフォルトの名無しさん
NGNGところで、719がサクサクと作ってるのはどんな分野のプログラム?
0729デフォルトの名無しさん
NGNGただのプログラミング言語好きなだけじゃん
0730デフォルトの名無しさん
NGNG>>726
他人のプログラムは決して信じない俗物。
現実を認めようとせず、箱庭に楽しみを求める。
>>729
他人のプログラムは決して信じない変人。
協調性がなく、箱庭に楽しみを求める。
0731デフォルトの名無しさん
NGNG0732デフォルトの名無しさん
NGNGただ、昔ファミコンのころのゲームのプログラムなんかは(今は知らないが)
売っちまったら二度と手入れられないので、中身はめちゃくちゃ。
とにかく納期に間に合わせてパッチ当てまくればよかった。
その時代なら719も生きる場所があったかも。
ちなみに開発はアセンブラ。
0733デフォルトの名無しさん
NGNGまあ内容にもよるけど数千行ならクラス設計してやるような規模じゃないと思うが?
普通に構造化設計しながらコメント入れてはサクサクコード書いていけば
数千行ならデバックしながら7日もあれば書けるよ。
もちろんOOPL使えば構造化設計としてクラスも作るけどさ
0734デフォルトの名無しさん
NGNG0735デフォルトの名無しさん
NGNG今だとプログラムの規模がでかくなっていて、プログラマだけでも最低 3 人、
多いと二桁って世界になってるから、
中身めちゃくちゃ
本人も把握してない
だと話にならんよ。
0736デフォルトの名無しさん
NGNG数千行程度の小さなプログラムで設計をするのはどうかと思う。
まぁ新人ならば数千行程度の小さなプログラムでも
設計しといた方がいいと思うけど
0737デフォルトの名無しさん
NGNG数千行を仮に 5 千行としておくが、それで 7 日? 内容にもよるが、一日に
間違いのないコードを 700 行きっちり書き連ねていくのは、かなり辛いぞ。
設計を適当にすませるってことは、ある程度の行き戻りは覚悟することに
なるから、実質的に書くコードはもっと増えるし。
> 行数だけでカタってる時点でアウト。
全くその通りなんだが、まぁ、おおざっぱな話をするときには使える指標では
あるよな。(勤務評定で使ってはダメだが)
アプリケーションよりのコードで、同期やらなにやらが込み入ってない部分だ
と、俺は平均して一日 300 行(コメント、空行込み、修正や削減分は差し引い
て)ぐらいだよ。これがスレッドの同期が絡んだり、ハードウェアよりのプログラ
ムだと、さらに少なくなる。
0738デフォルトの名無しさん
NGNGだけど、>>719のやり方とは、大きな差があると思う。
0739デフォルトの名無しさん
NGNGさらっとでも、しっかりした設計が出来てるから、数千行でコンパクトに
収まったプログラムの差、くらい大きな差かも。
0740733
NGNG千〜9千って事だから√(1000*9999) でおよそ3千行程度を考えてたよ
俺の場合は1日に、だいたい2千行くらい書いて、3/4捨てるような感じかな
関数・クラス単位にデバックして、動かなかったらさっさと捨てては作り直してるし
0741733
NGNG0742737
NGNG納期直前はともかく、私は基本的に1日8時間しかコードは書かないなぁ。
それ以上は集中力が続かなくて、1 時間よけいにコードを書くと、翌日に
2 時間デバックする羽目になる(w
あまった時間は集中力のいらない書類整理とか、Web やメールを読んで
技術動向をチェック、なんて方に回してます。
> 関数・クラス単位にデバックして、動かなかったらさっさと捨てては作り直してるし
何が問題なのかをつきとめないと、また同じミスを繰り返すぞ。人が書いた
コードを回収しているような場合には
「腐ったモジュールは丸ごと捨てて、作り直しちまえ」
とすることはあるが、自分が書いたコードではさすがに無いよ。
0743デフォルトの名無しさん
NGNG> 私は基本的に1日8時間しかコードは書かないなぁ。
え?デバッグする時間は?
コードを書く時間ってそんなに必要ないでしょう。
プログラムを書く場合に必要な時間って多くの場合、
設計とデバッグ。
0745デフォルトの名無しさん
NGNG書けるんだから、そんなもんじゃないの?
0746デフォルトの名無しさん
NGNGデバッカで延々トレースしたり悩んでるの見たら さっさと作り直した方が楽だろうにと思うし
こんだけ動いてるなら作り直すよりデバックした方が速いだろうにと思うし
0747デフォルトの名無しさん
NGNGでも、捨てる前に、ちゃんと動作することを確認してるけど。
0748デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNGデータフローを中心に考えるプログラムならば再構成でなんとかなる。
で、短いプログラムにはデータフロー中心で考えるものが多い。
0750デフォルトの名無しさん
NGNG実際にプログラミングして、作業記録をつけてみ。
0751デフォルトの名無しさん
NGNGタイピストとプログラマの仕事をごっちゃにしてないか?
0752デフォルトの名無しさん
NGNGそこまでの条件書くようにしてる。たとえば、
# ここまででax,bxはフリー cxは処理済みのビット数 es:[di-1]までは処理済み
# ds:[si+bx]は全ビット処理済みでないことに注意
とか。
で、書きなおすときは、一息ごと(w にやるようにしてる。
0753デフォルトの名無しさん
NGNGその感覚は同感。
俺の場合は1日かけて完成できないクラスは
なんか間違っているということで、破棄することにしている。
0754デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています