トップページtech
988コメント450KB

eXtreme Programming

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
12のプラクティスがありますが、
実際実用的と思われるのはTesting, Refactoringの2つだと。
Cording Standardsは常識と考えればね。

XP全般について語ってもいいですが、
むしろTesting, Refactoringの二つをメインに語りましょう。
Testingのテクニックなんざをね。

参考URL:
http://objectclub.esm.co.jp/eXtremeProgramming/
00021NGNG
JUnit (for Java)
http://www.junit.org

RubyUnit
http://homepage1.nifty.com/markey/ruby/rubyunit/index.html
その他は1のリンクのFAQ見るべし
0003デフォルトの名無しさんNGNG
XPって理想ではあるけど殆ど妄想かも…

チームメンバの能力が相当高くないと成り立たないよね。
あとモラルも。

何も分かってないくせに、リファクタリングにかこつけて意味もなくコード
いじるオタクちゃんが絶対出てきそうだし。

テストの妥当性とか突き詰めていけばキリがなさそうだし…
そもそも、テスト書く人間のスキルがそれなりに高くないとダメだし。

ペアプログラミングと、個人の端末は持たないってのは論外。出来るわけない。
0004デフォルトの名無しさんNGNG
実際に導入してるところの本音とか聞きたいなぁ
0005デフォルトの名無しさんNGNG
>>3
>ペアプログラミングと、個人の端末は持たないってのは論外。出来るわけない。

出来ないんならやらなきゃいいのでは?
やってるとこはやってるらしいよ。
0006デフォルトの名無しさんNGNG
UnitTestツールは便利だよ。
うまくいって欲しい時のテストはもちろん、
例外時のテストも可能だし。
システム止まってもらっちゃ困るから、
しっかり例外時のテストしなきゃね。
0007デフォルトの名無しさんNGNG
>>3
>チームメンバの能力が相当高くないと成り立たないよね。

それ有りそう。たとえば馬鹿がコードを書くならば、
リファクタすればするほど改悪するかも知れないし、
馬鹿が二人そろっていれば、ペアプロで改悪が加速される。
馬鹿がコード規約を定めれば作業は瓦解する。

実際いるんだよねえ。プログラマ側にもマネージャにも客にも、馬鹿が。
まともに頭使ったら絶対こんな答え出すまい?っていうような答えを出して、
しかも平然としてる奴って。

>ペアプログラミングと、個人の端末は持たないってのは論外。

個人の端末持たないなんてPracticeは、無かったと思いますが?
それじゃネットワーク分散開発がやれないじゃん。自宅にPC持てないから。
それにHHKの売り文句みたいに「自分の気に入った操作環境」は超重要ですから、
それを拒否するなんて馬鹿なことをXPがスルとも思いがたい。

もしかして、ソースを個人で抱え込まないっていう話ですか?
>共同所有権(Collective Ownership)
>誰でも、どのコードでも、どこででも、いつでも、プログラマはコードを修正できる。

それなら、ソースを個人pcじゃなくて、サーバーのver管理ツールに置くのと、
修正を各自が勝手にやる(ことを許す)ってので、OKな筈です。

なおこーゆーことをするには、いや、しない普通の開発の場合でも、
ver管理ツールの存在は大前提っす。XPをしてなくても、これは実感。
偶発や故意(馬鹿も含めて)のソースの修正の安全性が段違いになるので。
俺んとこでもVSS(笑)使い始めてから開発「安定」性がはっきり上がった感じです。

まぁこれはXPに興味持つような人になら釈迦説法だろうけど。
RCS/CVS/VSSスレと、ゲーム開発スレを、参照どぞ。
0008デフォルトの名無しさんNGNG
っていうか、何で「バカがやると」とかいう前提で考えるんだ?

自分や、自分が所属する人間が、現在のやり方を捨て、
XPを実践したらどうなるかを考えたほうが健全では?

「バカ」がやれば、ウォーターフォールでもスパイラルでも
失敗するに違いないでしょ。
0009デフォルトの名無しさんNGNG
>何で「バカがやると」とかいう前提で考えるんだ?

>自分や、自分が所属する人間が、現在のやり方を捨て、
>XPを実践したらどうなるかを考えたほうが健全では?

ん???

一般論として「馬鹿」を考えた後で、
自分たちがその馬鹿に該当するかどうかを考える
という二段構えでも、おかしくないっしょ?
00108NGNG
ん、だから、バカに関する考察して何の益があるんだろう?という
疑問なんですが。

バカがやると失敗するが、スキルのある人がやると成功する、
とかいう考察をしたいんでしょうか?
0011デフォルトの名無しさんNGNG
C/C++用のTestUnitが数種類あるみたいだけど、
どれが一番使いやすいかな?
0012デフォルトの名無しさんNGNG
結論

駄目プログラマは、どんな手法を用いても駄目
天才プログラマは、どんな手法を用いても天才
0013デフォルトの名無しさんNGNG
XPは、いろんな開発手法をやってきてそれでも上手く行かなかった組織が
取り上げたところで効率が良くなる手法ではないと思う。
ある程度のノウハウがあり、そこそこ開発効率の高い組織がさらに上を
目指して取り入れた場合のみ効果があるのではないか?

いずれにしても銀の弾など存在しないのだから過剰な期待は禁物。
0014>13NGNG
厨房には向かないってのはもうわかったから次いこうや。
0015デフォルトの名無しさんNGNG
UnitTestはただテストのコードとして書くだけじゃなくて、
クラスの設計時に合わせて書くといいよ。
なぜなら設計時にテストコードを書くことは
事前に(仮想的な)クラスを使ってみることを意味するので
クラスがどうあるべきかというイメージがはっきりする。
# UMLだけ書いているときと比べてやりやすい気がする。

またテストコードがクラスのドキュメント的な性格を持つので、
UML図、仕様書とコードを常に同期させるコストを低減できる
# ことが期待される。このあたりの効果はまだ不明。

いずれにしても厨房はまともなテストが書けない。
まともなリファクタリングができないといっても不毛だよ。
厨房がXPの実践を通して設計・テスト・リファクタリングの
経験をつめると考えれば従来のコーダよりも得られるものは
はるかに大きいと思う。
0016デフォルトの名無しさんNGNG
>>12
その考えには反対だな。
馬鹿が集まればどんな方法論使っても失敗するけど、
優秀なやつだけで固めてもプロジェクトは失敗するときがある、
ってことでみんな頭を悩ませていたわけでしょ。
で、いろいろなプロジェクト進行法が考え出されて、そのなかで
もっとも現代的で現実的なのがXPってことでしょ。
XPを用いても優秀な人材がいないとだめってのはいっしょってことだな。
0017デフォルトの名無しさんNGNG
>>16
うまく言えないけど、なんかXPの思想や目的、成り立ちと合致してない気が・・・。
0018デフォルトの名無しさんNGNG
>>17
それって「いろいろなプロジェクト進行法が考え出されて、そのなかで
もっとも現代的で現実的なのがXPってことでしょ」って部分に対して
だよね?
スマソ、あんま考えて書いた文じゃないから変でした(藁
ただ、漏れがいいたいのは「優秀なやつだけ集めたとしても失敗する
ときがある。何らかの方法論を使えばそのリスクを軽減できるけど、
そのなかでもXPはなかなか逝けてるYO!」ってことでした
0019デフォルトの名無しさんNGNG
>>10
馬鹿について考えるのが抽象的すぎて困るなら、
自分について考えるのは具体的すぎて
応用が利かないと思うが。

応用ってのは、他人とかに話を展開するときに、ね。
0020デフォルトの名無しさんNGNG
マルチスレッド・マルチプロセス・ネットワーク関連の
UnitTestについては専用のTestingFrameworkってあるのでしょうか。

あとGUIのテストも面倒そうですね。
メニュー選んだりクリックしたりとかが。
0021デフォルトの名無しさんNGNG
>>20
xUnitは言語ごとにあるから、そのプログラムが何で作られてるかによるな。
あと「何を」テストするかにもよる。
漠然と「マルチスレッド・マルチプロセス・ネットワーク関連」と言われても・・・。

>あとGUIのテストも面倒そうですね。
>メニュー選んだりクリックしたりとかが。

Javaの例がどっかにあったな。
WebならHTTP Unitなんかが使える。
00221NGNG
とりあえず、

XPエクストリーム・プログラミング入門
ソフトウェア開発の究極の手法
ケント・ベック(ベック.ケント)

は、XPの紹介だけで実際には使い物にならない本ですな。
XPエクストリーム・プログラミング実行計画 を読んだことがある方
いい本でしたか?
0023名無しさんNGNG
age
0024名無しさんNGNG
age
0025デフォルトの名無しさんNGNG
>>22
どういう内容なら「使い物」になると判断します?
いまよんでるけど、まだ7章なんで精神論が主。
00261NGNG
>>25
これこれこういう思想だよ、というのは伝わるが
技術的な内容は一切無かったような。

とりあえず私は2冊目の本を注文しました。
こっちもそれっぽい内容だったら鬱。
00271NGNG
ついでだけど、既に
「テスト抜きではプログラムが書けない体」
になってしまった人いるかな(笑)
0028名無しさん@お腹いっぱい。NGNG
おお、珍しく知的な人たちが書いてる。
0029コピペさんNGNG
The Test/Code Cycle in XP
テストをひとつ書く。
テストをコンパイルする。まだ何もつくっていないんだから、これは失敗しないといけない。
コンパイルできる程度にコードを書く。(必要ならその前にリファクターする)
テストを走らせ、失敗することを確認する。
テストが通る程度の実装を行う。
テストを走らせ、通ることを確認する。
整理し「同じことは一個所で」となるようにリファクターする。
最初に戻って繰返す。
0030>29NGNG
0.いっちゃん最初に既存のテストが100%通ることを確認

全てはここからだ。
0031デフォルトの名無しさんNGNG
>>27
てゆーか、早く(ニンゲンに)なりたいです俺(T_T)

今やってる仕事がいい加減なプロジェクトで、
客とか上とかの連中が仕様をまともに考えやしない
(理屈的に穴だらけだったりとか)んで、
モトネタの仕様が無くちゃテストもかけない、
でも実装本体は書かされる、という
ロクでも無い状態になってます。
テストファーストが「できる」状況にあるかどうか?は、
結構そのプロジェクトのまとも度の指標になるんじゃないかと憶測。

せめてってわけで、コードとテスト(しかも手動用の手順書)を
同時に提出するようにしてるんだけど、
他の大抵の奴はコード書いてから数十時間後でないと
テストを提出してないらしい。俺のスタイルが
ものめずらしがられてしまったよ。
テストの内容が仕様やコードと(微かにでも)ずれていることの恐さを
判っているんだろうかヤツラは?
0032デフォルトの名無しさんNGNG
>>30

なにかに似ていると思ったら、これって
ソースとかのバージョン管理ツールの理屈に
なんとなく似てませんか?

つまり、概念的には、ソース字面レベルじゃなくて
実行テストレベルでの「diff」なんだよソレは。

確かに字面レベルだと、ソース書きながら
そのソースや他のソースの字面を比較とかするために
頻繁にgrepとか使うもんなあ。
それの実行時版なわけね、UnitTestって。

う。俺ぁエディタでソース書くとき、数秒(誤字じゃなく)に1回
SAVEする感じなんで、同じノリでUnitTestも数秒に1回やりたいな。
将来CPUが速くなったら、コード書くのとリアルタイムに同期した
全自動テストつまりIncrementalUnitTestなんてものが
出来るようになるかも。最後の}を入力し終わった瞬間に
Test画面がRedからGreenになるっていう感じ。

ん?するとUnitTestはRCSみたいなもんってことで、
一方でCVSに相当する統合テスト自動化方法ってのも
きっとこの世のどっかにあるんだろうな(^^;;;

UnitTest+(CVS-RCS)=統合Test
みたいな感じかな。
0033デフォルトの名無しさんNGNG
>>32
多分アナタ、テスト中毒(Fowlerのいう、Test Infected, うただなら
Addicted to Test)になる素質アルネ
0034デフォルトの名無しさんNGNG
>>33
なりたいです(廃人もーど

妄想つづき。
エディタ上でソースの任意の部分を選択ハイライトさせて
Testってコマンドを投げると、その部分に
うまく該当するTest(1つ以上)が存在すれば
そいつを走らせてくれる、というエディタとか。

まぁUnitTestのUnitより小さい単位なんてものを
考え出したら却ってハマルだけかもだが。
0035デフォルトの名無しさんNGNG
>>34
ワォ、アナタ天才ネ
って文体気持ち悪いから戻すけど、
buildとバージョン管理ともろもろを統合するツールは
今、いろんな人がつくりはじめてるみたい。今ならいっちょ面白い
のをつくると皆喜ぶかも。

エディターとの統合も面白いね。
0036デフォルトの名無しさんNGNG
>>32
>SAVEする感じなんで、同じノリでUnitTestも数秒に1回やりたいな。
これはちょっとウザいと思う。動かないのわかってて書いている場合もあるので。

>ソースとかのバージョン管理ツールの理屈に
>なんとなく似てませんか?
というより、XP,UnitTestを
開発ツールベンダに認知させる事ができたら、
開発の全フェーズに関わってくる可能性がある。
# 最近のIDEはカスタマイズ可能なので、
# ユーザーレベルで実現可能なはずだけど。

・プロジェクトと連携。ソースやクラス定義を追加したら、テストの枠組みを自動生成。
・ソース管理と連携。ソース管理のチェックイン・チェックアウトの度にテストを実行。
・実行(?)と連携。プログラムを実行したらその直前にテストを実行。
# テストのmake(前回失敗したもののみ実行)なんてのもありだね。
・デバッガと連携。テストに失敗したら、そのテストを再実行して失敗する直前に
 ブレークをかけてデバッガに制御を渡す。あとテストのステップ実行など。
・レポートツールと連携。テスト結果をデータベースに出力。
 最後に成功した(失敗した)モジュールとテスト直前に修正した他のモジュールなどをレポートする。
・プロファイラと連携。テストの時間を計測。複数のアルゴリズム・バージョン間で実行時間を比較。

これらの幾つかの機能を持ったDelphiのframeworkを作成中。
Delphiはビルドが超高速、GUIが作りやすい、コード補完、
クラスのprivate/protectedにアクセスするテストが普通に書ける、
スマートリンク、テストメソッドの検索・自動実行
ができるので、気合を入れれば結構使いやすそうなものができそう。
00371NGNG
う〜ん
UnitTestしないで試しにプログラムを作ってみたら
発狂してしまった(爆)
0038デフォルトの名無しさんNGNG
ふぉっふぉっふぉ、感染してしまいましたね。
もうとめられません。あなたの因子が社内に、大学に、
伝染してゆくのです。
0039デフォルトの名無しさんNGNG
>>36
おおおおお!
(案の段階で既に)すばらしい!!

なるほど。Borland伝統(笑)のrunメニューのなかに
testメニューが混じってくる感じかな。
DelphiならIDEへのカスタマイズもDelphi自体で書けるから
尚更有り難いですね。

>クラスのprivate/protectedにアクセスするテストが普通に書ける

これって同一ソースファイルに書くわけですね。
リリースのとき切り離すのがアレかな。
あ、条件コンパイルすりゃいいだけか。

>プロジェクトと連携。

Wizardでクラス生成を選択したら
対象ClassとTestClassを一緒に生成っすか。うおー。

>ソース管理と連携

delphiに添付の管理ツール以外も使えるようにしてください(w
(あのツールって使いにくくないっすかかなり?)
0040デフォルトの名無しさんNGNG
>もうとめられません。あなたの因子が社内に、大学に、

変化を抱護せよってのは、そういう意味だったのか(w
「伝染るんです」っていう感じ。
0041けっ!NGNG
こんな建設的なの、2ちゃんじゃないやい!!!
おいらフテネするもんね。
0042デフォルトの名無しさんNGNG
フテネするまえに...
でも、開発現場でISO9000とか、RUPとか、なんでも良いんですが、
重たーいプロセス体験してない人にXP菌を移しちゃっても
大丈夫なんでしょうか?
0043デフォルトの名無しさんNGNG
>>42
ふとまた下らないこと考えたんですが、
ISO9000とかハサップ(w)とかのノリと
XPのノリとの違いって、
型有り言語と型無し言語の違いと、
なんとなく似てるような?(よしあしはさておき
0044デフォルトの名無しさんNGNG
ニテルカモ
運用次第で後者の品質が極めて高くなる。
でも厨房に触らせると...
0045デフォルトの名無しさんNGNG
>>42
プログラマならいいんじゃない。
実践的だし、こういうのにはまる素質があるプログラマは伸びると思われ。
ただ、リーダークラスが安易にはまるとプロジェクトが崩壊するかも。
0046デフォルトの名無しさんNGNG
XPの評価ってオブジェクト指向普及前のごたごたと似てるな
いち早く取り入れて玉砕するも良し
否定して出遅れるも良し
0047デフォルトの名無しさんNGNG
>>46 そだね
ただし、みんなOO普及初期より誇大妄想少なくて
地に足がついた議論してる気がするけど
0048デフォルトの名無しさんNGNG
最初から小規模なプロジェクト向けの軽量な開発方法論ですって
限定してるところがポイント高し。

OOは大風呂敷広げまくりだったからなぁ。
004942NGNG
私実は、会社で重たいの体験する前にXP面白いので、
XP本も全部揃えてはまっちゃってます。3人のチームで、
お客サンのとこ(小さなNetベンチャー)でいっしょに
On site Customerよろしく開発したりもしてますが、少々不安が
あります。どーしよう。PSPとかやってみるのがよいんでしょうか?
アドバイスいただけるとすごいうれしいです。
0050デフォルトの名無しさんNGNG
>>49
身近に重たい派だけど仕事できるな、っていうプロジェクト
マネージャとかいないでしょうか?
やり方が古いと頭から否定せずに、半分はその人の真似する
つもりでやってみるのはどうでしょう。
0051デフォルトの名無しさんNGNG
>>22
>XPエクストリーム・プログラミング実行計画 を読んだことがある方
>いい本でしたか?

いい本でしたよ。訳もXP入門よりはましになってる。訳者が一人抜けた
のが良かったのか?(w

それから、Ron Jefferies の XPI (Extreme Programming Installed)
http://www.amazon.co.jp/exec/obidos/ASIN/0201708426/249-0179278-0341134
を邦訳中だとか。
005236NGNG
>>39
IDEの組み込み・プロジェクト管理関連は
ほとんどやるつもりないよ。
だって資料ないし面倒だし:-P
その代わりデバッガとの連携はきっちりやりたいね。

>これって同一ソースファイルに書くわけですね。
テスト書く場所ってメソッドの実装の真上がよくない?
リファクタリングする時も楽だし。

>Wizardでクラス生成を選択したら
>対象ClassとTestClassを一緒に生成っすか。うおー。
これはコードテンプレートで十分だと思う。
これ以上やろうとするとソースの解析しなきゃいけないので面倒かも。

>delphiに添付の管理ツール以外も使えるようにしてください(w
>(あのツールって使いにくくないっすかかなり?)
確かに使いづらい。これ誉めてるの聞いたことないね。
Winで使うならVSS>(Win)CVS>TeamSourceかな。

ところでまったく参照されないpublishedメソッド持ったクラスって
スマートリンクでうまく削ってくれるんだっけ?
テストコードの削除は{$ifdef}で囲まずにリンカに
頼ろうと思ってたけどやってくれないような気がしてきた。要調査。
0053デフォルトの名無しさんNGNG
>IntelliJ IDEA
>リファクタリング機能
ってなに?
0054デフォルトの名無しさんNGNG
>>32
DelphiのIDEと合体したUnitTest私も期待です。

>ところでまったく参照されないpublishedメソッド持ったクラスって
>スマートリンクでうまく削ってくれるんだっけ?

消してくれないみたい。実行ファイルにリンクされたメソッドは
ソースコードエディタで隣に青色の丸が付くのですぐに分かります。
RTTI情報を使って呼び出される可能性があるので仕方ないですね。
0055デフォルトの名無しさんNGNG
54の者だけど訂正。
「publishedメソッドを持ったクラス」が全く使われないのでしたら
リンクされません。
0056デフォルトの名無しさんNGNG
んー。古いけど、答えを思いついたんで。

>>10
>バカがやると失敗するが、スキルのある人がやると成功する、
>とかいう考察をしたいんでしょうか?

いや、そうじゃなくて、
馬鹿という抽象存在が、XPという具体的行為群に出会うと、
どんな馬鹿を具体的にやってくれるか?という話を書いたわけだ。
どう失敗するか?の話を付け加えたのが味噌。
あとは馬鹿抽象に俺とかアナタとかいう具体的人物を
当てはめる(のはいつでも出来る)。
TempleteMethodみたいなもんよ。
0057デフォルトの名無しさんNGNG
>テスト書く場所ってメソッドの実装の真上がよくない?

あっそうか。どうせ常に一対一対応だからそれでいいのか。
気付いてなかったとは撃つ出し脳。

>>54
まぁ、御本人が大変だってなら、IDE統合の部分は
誰か他の人が書いてくれることを淡く期待し…(^^;

delphiって、スマートリンクどれくらい効いているのか
ろくに考えずに今までやっていました(^^;
0058デフォルトの名無しさんNGNG
こりゃリファクタリングすべきだろう、と思った
ちょっと昔のコードを引っ張り出してみました。
------------------
class HHModel < Model
def initialize(ena, ek, el, gna, gk, gl, cm, v0, m0, h0, n0)
@deg_k = 4
@deg_n = 4
@Ena = ena
@Ek = ek
@El = el
@Gna = gna
@Gk = gk
@Gl = gl
@Cm = cm
@ans = [v0, m0, h0, n0]
@swp = @ans.dup #ansの一時変数
alloc(@deg_k, @deg_n)
#@k[4][4]
end
--以下略-------------------------------
initializeってのはコンストラクタなんだけど、
パラメータのほとんどをゴテゴテ引数にしてしまうのは
まずいですよね・・・
せめて初期設定だけ引数に渡して、
他のパラメータをあとから代入してやればいいのかな。

#ちなみにこのコードはXPを知る直前。
#テストコードなんてもちろんありませんが。
0059デフォルトの名無しさんNGNG
>>58

コンストラクタは必須パラメーターだけにして
あとは setter/getter みたいな手法をいつも使ってます
006058=1NGNG
>>59 さん
やっぱコンストラクタには必須パラメータのみですよね。
というか何でこんなことしていたんだろう。

まぁ、救い(?)なのは、スーパークラスをいぢらないで修正できそうなのと
サブクラス(今回のを含む)が3,4つしか作っていないことかな。
00611NGNG
>>51
オンラインで注文したんだけど・・・
実は品切れっぽかったです(笑)
そんなもん気づかないで注文した私もあれですけど。
0062デフォルトの名無しさんNGNG
Webのリソースって、市販されてる本と同じ分量の内容なんでしょうか?
XPの本ってなんかパート(?)ごとにでてるんで、どれをかっていいのか・・
予算が厳しいので、可能な限りWebで勉強したいと思うのですが
http://www.xprogramming.com/
00631NGNG
Webでも結構いい勉強できると思いますよ。
このスレではメインとして
・テスティング
・リファクタリング
のお勉強をしよう、ってことにしていますが。

Javaが使えるのでしたら、1のリンク中程にある
XP関連記事を読まれるとよろしいのでは。
Kent Beck氏の記事とWilliam C. Wake氏のを読んでみてください。
もっと知りたい!って時には・・・
一緒に勉強していきましょう(爆)
0064デフォルトの名無しさんNGNG
>>32
http://cruisecontrol.sourceforge.net/
とか?
Martin Fowlerもお勧め(?)の由緒正しきtool

>>53
http://www.intellij.com/idea/
にあるJava用IDEのこと
この手のツールがあるとリファクタリングが楽になる
特に名前の変更やパッケージ移動に効果的
0065デフォルトの名無しさんNGNG
こんな本もあったんですね。

リファクタリング―プログラムの体質改善テクニック
Object Technology Series〈10〉

http://www.amazon.co.jp/exec/obidos/ASIN/4894712288/qid%3D989997569/249-9204487-7841920
0066デフォルトの名無しさんNGNG
>体質改善

そうか。XPのリファクタリングって、
UnitTestによって常時健康をチェックしながらの
きちんとしたダイエット、みたいなもんだったのか。

無理なダイエットはたしかに「体の機能を損なったり」するもんなあ(w
0067デフォルトの名無しさんNGNG
いいよねリファクタリング…

他人のソースを勝手に綺麗にするとか、
わざと適当に書いてあとから直すとか。
0068デフォルトの名無しさんNGNG
>他人のソースを勝手に綺麗にする

たしかに。あれ良いですよねえ。
「自分の責任で直せ」っていう言いまわしが
えらく古びたものに感じられる。

すると、コントリビューションみたいな形で労働を測るのかな(^^;
つまり、より多くの個所の改善(勿論改悪はマイナス点)を
行えた人が給料上がるみたいに。
0069弱い者の味方、NGNG
宣伝効果抜群の共有HP宣伝掲示板を27
個設置ししました。27個の共有HP宣伝
掲示板全部にカキコすればなんと1,000
以上の掲示板にカキコしたことに!!
効率よく宣伝しちゃいましょう。その
他みなさんのお役に立つサイトを徹底
して集めています。是非見てください。

http://home9.highway.ne.jp/cym10262/
0070デフォルトの名無しさんNGNG
69に引っかからないように。
0071デフォルトの名無しさんNGNG
次号の日経コンピュータ(6月4日号)の特集は、
「究極のソフトウェア開発手法〜エクストリーム・プログラミングの全貌」
だそうだ。
0072デフォルトの名無しさんNGNG
糞記事の予感・・・
0073デフォルトの名無しさんNGNG
>>72
誰が特集を書くのかにもよるな
0074デフォルトの名無しさんNGNG
>>68-69
そうかなぁ?

リファクタリングを傘に着て
「とりあえずテストは通ったんだけどリファクタリングしといてよ」とか
「お前がリファクタリングしたんだからお前の責任だろ!」とか
「あとでリファクタリングすればいいんでしょ。とりあえず動くんで」とか
「あいつにだけはリファクタリングさせるなよ。」とか
「あのひと納期も守らずいつもリファクタリングばかりしてるよね。」とか

手抜きと責任転化と自己満足の正当化に使われやしないだろうか?
0075デフォルトの名無しさんNGNG
>>74
誰が何処をどれだけ直したのか履歴が残ってて何時でも
参照、集計できるツールがあればよいと思われ。
CVSとスクリプトかなんかでできるかな?
0076デフォルトの名無しさんNGNG
>>74 >>75
XPやるのに構成管理ツールは必須だと思う
作業がループしがちな人には強権発動して担当部分以外は
ReadOnlyにしてます
0077デフォルトの名無しさんNGNG
「とりあえずテストは通ったんだけどリファクタリングしといてよ」
--> 殴る
「お前がリファクタリングしたんだからお前の責任だろ!」
--> よく考えてから殴る
「あとでリファクタリングすればいいんでしょ。とりあえず動くんで」
--> それなりに正しい態度だと思う あんまりなら殴る
「あいつにだけはリファクタリングさせるなよ。」
--> きたないリファクタリング(リファクタリングというのか?)
する人って見たことないけど,もしそうなら殴る
「あのひと納期も守らずいつもリファクタリングばかりしてるよね。」
--> XPの精神に反する行為なので殴る
0078デフォルトの名無しさんNGNG
>>75
CVSは知らないけど、VSSとRCS(^^;では、
CheckInのときにひとこと自己主張(笑)を書きこめるよね。

自分が厨房でないことを証明(?)したかったら
あそこに然るべき内容の有ることを書いて欲しいと思う。

白紙答案は禁止したいなあ。
0079デフォルトの名無しさんNGNG
Martin Fowler の Refactoringをよんだら、
smalltalkには、範囲指定→右クリック→メソッドを抽出
ってツールがあるみたい。
Javaにもリファクタリング関係のツールで便利そうなのありますか?
0080デフォルトの名無しさんNGNG
>>79
http://www.martinfowler.com/articles/refactoringRubicon.html
にでてるIDEAとJFactorとか
emacsにも何かあったような…
0081デフォルトの名無しさんNGNG
Delphi用Testing Frameworkリリースage
でも使い方がよくわからない。。。

719 ふみもたたけし  2001/05/21(月) 00:10
Delphi5用Testing Frameworkリリース。
http://members.jcom.home.ne.jp/monazilla/shortcuts/DUnit/DUnit010520.zip
http://members.jcom.home.ne.jp/monazilla/shortcuts/DUnit/DUnit010520.png

まだドキュメント書いてないので使い方わかんないと思うけど、
興味ある人はtestDUnit.pasを眺めててください。
0082デフォルトの名無しさんNGNG
JUnitというのをダウンロードしたのですが、
ドキュメントの説明が長くて、いまだに動かせないです。

これって自作のテストクラスから判定を受け取って、
赤か緑を表示する機能のほかにいいことあるんでしょうか?

Javaな人はテストツール何をお使いでしょうか?
0083デフォルトの名無しさんNGNG
まず、JUnitの場所を教えてちょ
話はそれからだ
0084デフォルトの名無しさんNGNG
http://www.junit.org/
0085デフォルトの名無しさんNGNG
>>82
>これって自作のテストクラスから判定を受け取って、
>赤か緑を表示する機能のほかにいいことあるんでしょうか?

コマンドラインでも使えるが・・・。
そういうことではないの?
0086デフォルトの名無しさんNGNG
まだ使いはじめだからはっきりしたことはいえないんだけど、
自作のテストクラスを作ることで、テストに必要な機能はほぼ完了しているから、
わざわざJUNITを使うまでも無いような気がする
0087デフォルトの名無しさんNGNG
>>86
JUNIT使うようになったら自作のテストクラスを
作る必要なくなったと考えると幸せになれよ。

TestingFramework自体はコード量をそれほど減らしてくれる
わけでもないし、バグの発生数を減らしてくれるわけでもない。
単にテストの習慣をつけましょう・テストを
パターン化しましょうってだけだよ。
0088デフォルトの名無しさんNGNG
87>
なるほど。
テストする習慣作りに役立つアイテムみたいなものってことですね。
あのランプ(?)が赤とか緑に変わる瞬間はまあ楽しいです。

自作で表示部分を面白くしようかな
0089デフォルトの名無しさんNGNG
xUnitは、GUIで使うのではなく、コマンドラインで使うのが本筋だと思うんだが…。
0090デフォルトの名無しさんNGNG
LCRダナー
赤から緑になったら〜OKだよ!
00911NGNG
一応、GUIでも使えるものがあるらしいですよ。
JUnitは使えたような。
RubyUnitとかは使えませんけど。
#そもそも標準でGUI環境ないし>Ruby
0092デフォルトの名無しさんNGNG
今・・・
諸事情により・・・
Cでプログラムを書いています・・・
テストツール・・・
使いづらいです・・・
オブジェクト指向って・・・
素敵ですね・・・

というか・・・
あれないとやっていられないですよね・・・
0093デフォルトの名無しさんNGNG
・・・はコンソール版のUnitTestの「テストが3個正常終了しました」
の意味でしょうか?
0094デフォルトの名無しさんNGNG
毎行テストしてるんかい(藁
0095デフォルトの名無しさんNGNG
>92
組み込み系ですが、今回UnitTestをやってみようと思ってます。
Cですけど、やっぱり使いづらいですか?

cUnitを自分で改造しましたが・・・・
0096デフォルトの名無しさんNGNG
92じゃないけど
動的にobjectをロードできる仕組みがないとつらい。
CやC++だといろいろ工夫がないと萎えるね。

インタプリタ、最高ですかー?
0097デフォルトの名無しさんNGNG
日経ソフトウェアかなんかに書いてあったが、
ペアプロってやっぱり
「キーボードやマウスを」2人で共用することなのか?

いくらなんでもそりゃ嘘だと思うのだが。
ディスプレイ&キーボード切替器買えよっつーか。

ていうかペアプロって「ソースを」2人で共有
することだと思っていたんだが違うの?
CVS経由で(でなくても原理的にはいいが…)
隣人と同一ソースを頻繁にやり取りしながら
いじりまわすってことなんじゃなくて?
0098DelおたNGNG
>>96
ネイティブコンパイラだけどクラスローダーがあるDelphiまんせー
0099デフォルトの名無しさんNGNG
>>32
だいぶ、亀になるが、もし仮に、そんなツールを使ったら買ってくれる人はどのぐらい
いるかねえ…。
0100デフォルトの名無しさんNGNG
テストを自動生成するアプリなら製品化されてたな。
そんなんで金取るなという気もしたけど。
0101Del厨房NGNG
>>96
>クラスローダー
え、どんなの?どんなの?
■ このスレッドは過去ログ倉庫に格納されています