オブジェクト指向は戦場では必要無し その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/
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デフォルトの名無しさん
NGNG0755デフォルトの名無しさん
NGNG俺は一日にはこだわってないけど、数日かけて1つのクラス実装してると、
たいがい途中で、「あ、これは別のクラスにしなくちゃだな」って思う。
思ってもそのまま実装しちゃうことも、よくあるけど。
0756デフォルトの名無しさん
NGNGあんたがいなくなった後、メンテするやつにその数千行だけを読ませるの?
なんかドキュメント書くだろ。それって設計書を読ませるんでないの?
規模によって、設計書のレベルは変わるかもしれんが。
0757デフォルトの名無しさん
NGNGなんかタイトルと離れた話題だけど、
数千行(3千行程度)のプログラムとしての設計書はソース自身になるように作るのが普通では?
仕様書ならともかく、設計書を別に作らされてるってかわいそうとしか思えないのだが
0758デフォルトの名無しさん
NGNGきちんとした書式の設計書でなくていいから、どんな作りになってるのか、メモくらいのこせ。
0759デフォルトの名無しさん
NGNGコメントで十分では? :)
0760デフォルトの名無しさん
NGNG0761デフォルトの名無しさん
NGNGそんなやつのなら、だらだら書いてたら数千行になっちゃったようなクソコードだろ。
せめて、「どんな作りになってるのか」くらい書いとけ、ソースの先頭でもいいから。
それも必要無いようなのは、コメントもいらん。
一目でクソだとわかるほうが、捨てる判断もしやすいからな。
0762デフォルトの名無しさん
NGNGどんな言語で開発してるんだ? もしかして素のbasicか?
そんなキミにいいこと教えてやろう アセンブラなら ':' をgrepしろ
pascal なら procedure / function で grepすればいい
cなら一度コンパイルしてマップファイルを見ればいい
0763デフォルトの名無しさん
NGNG数千行程度なら、いわゆる紙の仕様書は要らんと思うなぁ。
構造体とグローバル変数、それに関数の頭に簡単なコメントがつけてあれば
間に合う。それでは間に合わない腐ったコードもあるけど、それはコメントが
あってもやっぱりダメだし(w
0764デフォルトの名無しさん
NGNG結局 自分のスタイルと違う設計は解読し難いというだけだろ。それは結局勉強不足さ。
0765デフォルトの名無しさん
NGNG0766デフォルトの名無しさん
NGNG参考になるURLだけ書いとく事もあるけど、勉強しろゴルァって
言うよりも、ソースの先頭に全部書いてあるから読めゴルァ
のほうが、手離れがいい。
勉強不足なやつに、いちいち聞かれるの、うざいし。
0767デフォルトの名無しさん
NGNG別に新人教育のためにプログラム書くわけじゃないし。
0768.
NGNG0769デフォルトの名無しさん
NGNG0770デフォルトの名無しさん
NGNG> 設計の概念の無いやつのコメントなんて、信用できるかよ(w
> そんなやつのなら、だらだら書いてたら数千行になっちゃったようなクソコードだろ。
設計書を書かない奴と設計書を書けない奴を混同する奴の方が信用できない。
常に設計書を書かなければ気が済まない強迫観念をもったキチガイの方が信用できない。
設計書なんてエレベータみたいなもの。
3階建ての民家にあるのは馬鹿
5階建てくらいのマンションにはあれば便利だが、無くとも何とかなる。
20階建て以上もある高層建築にないのも馬鹿
3000行ほどの小さなプログラムも組んだことのない
新人君 or 学生君ならば設計しといたほうがいいと忠告しておく。
0771デフォルトの名無しさん
NGNGどんな作りになってるかのメモくらい残せよって言ってるんだが。
物作りするとき、走り書きくらいするだろ。
それがあとでコード読む手がかりになるなら、残さない理由が知りたい。
あ、もしかして、3000行程度のプログラムが脳内設計で書ける自慢?
ならしょうがないな。
おれがわるかったよ。
0772デフォルトの名無しさん
NGNG行数で語るから、話が混乱するんだと思うが。
べつに 1 万行でも単純なプログラムなら要らんし、百行でも複雑な
アルゴリズムを使ってるなら参考文献なり具体的な説明なりを残さ
ないと、後で自分が困る。
それだけだろ?
0773デフォルトの名無しさん
NGNG0774デフォルトの名無しさん
NGNG0775デフォルトの名無しさん
NGNGWin32 あたりで既存の API を呼び出すだけなら書かない。
そうではなく、整数中点円スキャン変換アルゴリズムを自前で実装してる
なら、関数の解説(これは引数で指定された点を中心とする半径 n の円
を描く、云々)と、アルゴリズムに関する参考文献か解説を書いておく。
0776デフォルトの名無しさん
NGNG記憶力が良いか頭がイーかたなんでしょう。
私は1月前に書いた自分のコードが
コメント無しでは読めません。
0777デフォルトの名無しさん
NGNG書けだの、その関数仕様書には「処理概要」とかいって、ソース見ればわかる
制御構造とか、下手すりゃフロチャートまで書けとか、そのくせ関数名は
命名規則で8文字以内とか、そんな経験があると、「ドキュメントなんかいらん!!」
と言いたくなるよな(藁
だけど、ここで出てるのは、そういう定型的なドキュメントじゃなく、
どこがどうなっているかの概略を説明する簡単な文書だろ?
もちろんどんなプログラムかによるけど、3000行なら、A4 1〜2枚くらいは
説明書があったほうがいいと思う。
コメントでいいという意見もあるようだけど、コメントはソースの
「その場所」に関する説明だから、全体を概観する文書は、やっぱ別に要るよ。
0778デフォルトの名無しさん
NGNGどこが居間でどこが台所なのか、台所から今に行くにはどうすればいいのか
という事くらいは、(後でメンテナンスするつもりなら)書いておいたほうが
いいと思われ。
その3000行を、クラスなりなんなりで分割したそれぞれが、ちゃんと「居間」
であったり「トイレ」であったりするなら、それ以上の詳細を説明する文章
までは要らないと思うが。
3000行がmain関数一本と言うアホなプログラムじゃなければ、そういった
メモには価値があると思われ。
0779デフォルトの名無しさん
NGNGこれって結構本当。
詳細設計がちがちでなければ、書きながら
考えてるし。
0780デフォルトの名無しさん
NGNG自分は大昔からこれを書くようにしているので、馴染み深いのですが、
他の人はそうでもないようです。
0781デフォルトの名無しさん
NGNG設計概要説明書。
0782デフォルトの名無しさん
NGNGソースと一緒に公開してくれる人はいないかな。。。
これに尽きる。
この方向でさらに突つきまわしても何も出てこないだろう。
OOブームを冷たい視線で眺めていた開発者達は今こそ見えてきた
頂上を目指す。
0784デフォルトの名無しさん
NGNGそのうちコードを書きながらメモを書くようになった
今は、行分割エディタでコメント部にメモを書きながらコードを書く
0785デフォルトの名無しさん
NGNG> それがあとでコード読む手がかりになるなら、残さない理由が知りたい。
C言語のプログラムだという前提で言うと
ディレクトリ構成でシステムの構成と階層を示している。
ファイルでモジュールを示している。
ヘッダコメントでそのモジュールの役割を示している。
includeで各モジュール間の依存関係を示している。
関数名で機能を示している。
ややこしい場所にはコメントを入れる
他に何が必要?GNUではこれで数万行を超えるプログラムが
何の問題もなく作られている。
もちろん、大規模なプロジェクトの場合、ドキュメントが一切ないのは
太平洋を横断するのに地図を持たずに航海するのと同じくらい無謀
だが、近所を散歩するのに地図を持って散歩する馬鹿はいまい
0786デフォルトの名無しさん
NGNG0787デフォルトの名無しさん
NGNG0788デフォルトの名無しさん
NGNG0789デフォルトの名無しさん
NGNG感情的な1行煽りしかできなくなった約1名に捧げる
「なんでこのスレにしがみついてるの?」
「なんでこのスレにしがみついてるの?」
0790788
NGNG0791788
NGNG作り始めに簡単なメモくらい書くだろ、それを残さない理由が知りたいって言ってるんだが。
無くても大丈夫とか、GNUでは大丈夫、は理由にならんだろ。
だから脳内設計で物作りが出来る自慢にしかならないのに…
ま、いいや、「あったほうがいい」っていう意見がいくつか出てるから。
■ このスレッドは過去ログ倉庫に格納されています