<< 前 ホーム 次 >>

bakaid: 20061112

http://www.ne.jp/asahi/dsp/apocalypse/oj-otoko-4.html

男色ディーノに元ネタがあったなんて知らなかったよ。

--

結局のところ、ほしいのは、思索するためのツールな
わけだ。思索というのはまさに作り出すことであって、
できあがったものを写生することじゃない。そこを
勘違いするからUMLの記号は増える一方だし、ホワイト
ボードのコピーも役に立たない。

思索というのは何も宙をボーッと眺めてやるものじゃ
ないし、人にもよるけど、手を動かすと効果的なことも
多い。もちろん、図を描くのも1つの手段ではあるんだ
けど、思考の速度というのはものすごく速くて、少なく
とも今のコンピュータ・パワーじゃそれに追いつけない。

だから紙なわけだ。最低限必要なものだけを紙に書いて、
それらをテーブルの上で自由に動かしてみる。紙片の
間の関係なんて、わざわざ線なんか引っぱらなくっても、
ちょっとの間なら覚えてられるもんだ。

--

大体、ペアでナビをやってるとき、PCはドライバに
独占されてるわけで、ナビに与えられてる道具といえば
紙切れとペンくらいなもんだ。

--

それとおんなじことがTDDにもいえるんだ。

プログラミングで誰もが疑問に思う根本的なこと。それは:

  何もわからないところからどうやって作りはじめればいい?

ということだ。その答えとしてOOAとかがあるわけだ
けど、ぶっちゃけいって、そんなに役に立たねーんだな。
というか、OOAやって見えるもんって、そんなもんすぐに
見つかるもんなんだよな、大抵は。

問題なのは『それが本当に動くのか?』ってとこなんだ。
だから『動かす』ことにフォーカスしなきゃなんねーんだ。
わからないんなら、わかるとこから始めなきゃなんない。
動かせそうなとこから始めなきゃなんない。いきなり
屋根作ったってしょーがあんめー。それ乗っける柱も
ねーのによ。それをやろうとしてたのがOOAからOODって
流れだったわけだ。そりゃダメだろ。

だから、TDDっていうのは思索を支援してるわけだ。
だから、TDDが設計技法っていうのはハズレじゃないけど、
ちょっと見方が狭い。やっぱり新しいプログラミングの
進め方なんだよな。

--

だいたよー、OOAとかギョーギョーしい名前がついて
たって、書いてあることって『ユースケースから名詞を
抜き出しましょう』とか、その程度のことじゃん?

アナリシス・パターンとか、あそこまで行っちゃうと
別世界だし、ああいうのが必要な場面がそんなに
あんのか? 大体、プログラマが一生のうちで触る
ドメインなんて、そういくつもねーだろ。それこそ
コンサルでもやんねーかぎり。ってことは、ドメインを
またぐような共通のパターンとかってあんまり意味ねー
じゃん。抽象度が高けりゃいいってもんじゃねーだろ。

--

それとさー、大規模大規模ゆーけどさー、大規模に
なったら技術的な問題より人的問題のほうがデカく
なるじゃん。そんなん当たり前じゃん。

そこがパラドックスじゃん。オブジェクト指向は大規模
開発のために生まれたっていうけどさ。人が増えたら
オブジェクト指向のこと知らない人も増えるわけじゃん。

だからC++なんか全然大規模開発に向いてるわけねーじゃん。
コード行数が増えるっていう意味で大規模だっていうん
ならまだしも。そうじゃないんでしょ? だったら、
百人以上もの人間がC++をまともに知ってるなんて、
期待するほうがバカじゃん。

本家Permlink

<< 前 ホーム 次 >>


Copyright © 1905 tko at jitu.org

バカが征く on Rails