[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 11670] Re: 偶然によるプ ログラミング



高橋(徹)です。

   "Yasuhiro Endoh <quiver2k@xxxxxxxxx>"さんは書きました:
> P73の注釈2に書かれていた
> 「偶然によるプログラミング」について
> 調べてみました。
> 
> 「達人プログラマー」p176に
> 「偶発的プログラミング」というものが説明されていました。
> 元の英語は分かりませんが多分これのことではないでしょうか。
そのようですね。

達人プログラマーp.176では、
「我々は、幸運と行き当たりばったりの成功に頼るような偶発的プログラミン
グを避け、慎重なプログラミングを選ぶべきなのです。」
とあります。引用を続けると

「偶発的プログラミングの方法
 Fredが、あるプログラミングを指示された時のことです。まずFredは、少し
だけコードを記述し、それをテストしました。どうやら動いているようです。
Fredはもう少しコードを追加し、またそれをテストしました。大丈夫、動いて
いるようです。このようなコーディングを何週間か続けた後、ある日突然プロ
グラムが動かなくなったのです。その後何時間も修正を試みたのですが、彼に
は何が起こったのかが判りませんでした。Fredはこのコードを追跡するために
長い時間を費やしましたが、修正することはできませんでした。彼が何をして
いたかは別にして、それはちっとも動いてはいなかったのです。」

注釈が付けられている個所が、フレーム番号を求める方法をストライクを無視
して投球数を2で割る方法にして、いじりながら動くという状況です。

テストファーストも適用を間違えると上記の偶発的プログラミングに陥るかも
しれません。ちゃんと判ってコードとテストを書いていればよいのですが、判
らないままいい加減にコードとテストを書いて、何となく動いているからOKと
するようなことにならないように気を付けましょう、ということです。
経験的にはコピー&ペーストを多用する人に見受けられます。コード一行一行
をきちっと理解せずにコピって動かないとやみくもにコードをいじり回すよう
な・・・。



TAKAHASHI, Toru