トップページ⇒tech
376コメント142KB

リファクタリング、させてくれ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
会社で見つけた糞コード。
自分で書いたけど、なんかあやふやなしっくりこないコード。
そんなコードを、リファクタリングします!

うpろだ
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html
0002デフォルトの名無しさんNGNG
かめはめ波
00031NGNG
あまり盛り上がりそうも無い無いな...

例えば、これ。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/1076074304_6/heapsort.zip
コマンドライン引数を、ヒープソートするコードだ。

片手間に、リファクタリングしてみてはどうだろうか。

0004デフォルトの名無しさんNGNG
>3
そのソースではリファクタリングする意味が無いな
0005デフォルトの名無しさんNGNG
unit test一式がないのにリファクタリングするのはちょっと
0006デフォルトの名無しさんNGNG
OnButton1Click関数の中にコードが7000行くらいあるVBのソースコードがあるんだけど
やってみる?
0007デフォルトの名無しさんNGNG
>>6 どうやって「ふるまい」を保つ検証をするんだ、そんなの(w
00081NGNG
>>6
ちょっとやってみたい
0009デフォルトの名無しさんNGNG
飽きるほどやってるのでもうやりたくない。やりたくないのにやりたくないのに。
0010デフォルトの名無しさんNGNG
リファクタリングする前にこれを読め。
ttp://capsctrl.que.jp/kdmsnr/wiki/bliki/?RefactoringMalapropism
>>5や>>7の懸念についてFowlerが語ってますよ。
00111NGNG
>>10
じゃあ、「いわゆるリファクタリング」で。
001210NGNG
断固として拒否する。
00137NGNG
>小さな「振る舞いを保持したままの変化」(リファクタリングと呼ばれている)

だから >>6 をどうやって「ふるまい」を保つ検証をするんだ
0014デフォルトの名無しさんNGNG
使えないコードは捨てる勇気も必要。
0015デフォルトの名無しさんNGNG
次回!
「リファクタリング断行!? 脳内テストケースで、ビルド・オン!」
乞う御期待!
0016デフォルトの名無しさんNGNG
自分の仕事に役に立つオープンソースプロジェクトの
リファクタリングすれ
0017デフォルトの名無しさんNGNG
>>16
互換性のために変えられないインターフェイスが腐っているので、やる気が起きません。
0018デフォルトの名無しさんNGNG
EclipseのリファクタリングとXPのリファクタリングはちょっと違うかな。

Eclipseのは限定的でリファクタリングのすべてじゃないってか
0019デフォルトの名無しさんNGNG
>>18
そんな当たり前のことを言われても・・・。
0020デフォルトの名無しさんNGNG
ふるまいなんて気にしないでリファクタリングしてるよ。
だから客にリファクタリングしただろヴォケといわれます。
0021デフォルトの名無しさんNGNG
>>20
それはリファクタリングじゃなくてリストラクチャリングかも
0022デフォルトの名無しさんNGNG
つまり、リファクタリング対象とテストケースの両方を書けばよいのだ。
0023デフォルトの名無しさんNGNG
>>22
問題は、すでに動いてるコードに対するテストコードを後から書くと
テスト漏れやミスが分かりにくいことだな。
テストファーストだとテストコード自体のデバッグも同時に行うので
リファクタリングするときにはテストが信頼できるんだが。
0024デフォルトの名無しさんNGNG
>>22
>すでに動いてるコードに対するテストコードを後から書くと
>テスト漏れやミスが分かりにくい
ん?なんで?

>テストファーストだとテストコード自体のデバッグも同時に行うので
>リファクタリングするときにはテストが信頼できるんだが。
信頼できるって、何が?
テストしながらテストコードデバッグするなら、
テストコードがまちがった方に倒れるかも知れんじゃん。
0025デフォルトの名無しさんNGNG
>>24
>すでに動いてる〜
テストがfailしない原因は、何もテストしていないから、という場合がある。
きちんとテストが失敗するターゲットを用意して、すべてのテストが機能することを
確認してから実ターゲットをテストするのなら確実だが・・。
テストファーストはその工程を内部に組み込んでいるってこと。

先にテストが正しく機能することを確認(=デバック)できたところで
初めてターゲットコードの実装を開始するので
同時っていうよりテストのデバッグが先か。それでも実際途中でテストのミスが
発覚することがあるので同時っていうイメージだったが、その場合も
テストの修正・確認が先で、その動作に基づいてターゲットの実装だな。
0026デフォルトの名無しさんNGNG
密かにリファクタリングして納品したコードを眺めていたら
バグを見つけました。やばいよー
0027デフォルトの名無しさんNGNG
そういうことか。まあでも、最初にターゲットをパスからはずしておけばほとんど同じじゃん?
同時っていう〜 は別に動作済みコードに対して後からテスト書いても別に変わらんじゃん。
0028デフォルトの名無しさんNGNG
>テストがfailしない原因は、何もテストしていないから、という場合がある。
ん?なんで?
そんなんでテスト漏れに気づかないなんてあるわけないじゃん。馬鹿かお前。

>きちんとテストが失敗するターゲットを用意して、すべてのテストが機能することを
>確認してから実ターゲットをテストするのなら確実だが・・。
確実な方法があるのにそれを無視して意見してたわけか・・・。
やっぱり馬鹿だお前。

>テストファーストはその工程を内部に組み込んでいるってこと。
だからなに?まぁ、馬鹿じゃ仕方ないか・・・
0029not in {1, ..., 28}NGNG
>>28
> そんなんでテスト漏れに気づかないなんてあるわけないじゃん。馬鹿かお前。
常にsuccessするようなテストを書いてしまう可能性があるということだ。

> テストファーストはその工程を内部に組み込んでいるってこと。
> だからなに?まぁ、馬鹿じゃ仕方ないか・・・
テストファーストであれば、
テストがfailすることを最初の動かないターゲットコード
そのものによって確認しておけるが、あとでテストするのであれば、
failするターゲットを別に書かなくてはならず、手間がかかる。
0030デフォルトの名無しさんNGNG
>>26 バグを埋め込んだとしたらそれはリファクタリングではない
元からのバグであれば...まぁ仕方がないか(w
0031デフォルトの名無しさんNGNG
>>28
つまらん
0032デフォルトの名無しさんNGNG
>>28
つまらん
0033デフォルトの名無しさんNGNG
>>26
実際に障害が発生する前にバグを見つけたということで、ここは前向きに喜ぶべし。
運用環境の修正をお願いしてもらいましょ。組み込みソフトだったりするとアレだが…
そういやFowlerの「リファクタリング」には、リファクタリングには
バグフィックスやコードレビューの効果があるって書いてあったな。
0034デフォルトの名無しさんNGNG
ちゃんと設計もコーディングも出来ない外注に限って、
「その件はリファクタリングで解決するので、このままで良いんです」とか訳のワカラン御託を並べがち。
じゃ、今すぐリファクタリングしろよ、設計レベルでw

ソースもろくすっぽ読めないマネージャに限って、
そーゆー戯言をまじめ信じちゃうからコワヒw
0035デフォルトの名無しさんNGNG
ちなみに、俺。
昔いた職場で、それぞれ数十人月〜数百人月のJavaアプリのソース、3〜4システム分集めて、
リファクタリングして再利用可能なコンポーネントベースの設計にしる!
って仕事に関わったことがある。なんか、事業部の部長が端から来てて、怖かったでつ。

コンポーネント抽出だったら楽勝なんだけどねぇ〜。
全部漏れなくコンポーネント化して、再利用&拡張可能にする、
つうのは難しいよ、実際問題として。

やっぱ、大規模システム全部をリファクタリングで整理します、とか言うのは、
ソース再利用ビジネスならまだしも、
現在運用中〜運用開始直前のシステムでは、
難しいのではないか、と。

#リファクタリング計画書とユニットテスト報告書を作成しる!、と。
発想は、そーゆー経験がないから言っちゃうんだろうなぁ〜、と。
0036デフォルトの名無しさんNGNG
仕事のプログラミングはつまらんので
「りふぁくたりんぐ」なぞさせんでくれ
0037デフォルトの名無しさんNGNG
>34
>じゃ、今すぐリファクタリングしろよ、設計レベルで

それはリファクタと言わない
リストラクチャだ
0038デフォルトの名無しさんNGNG
>>35
再利用可能性とかコンポーネント化はリファクタリングの目的でもないしねえ。
open-closed であるように作りはするけどさ。
0039デフォルトの名無しさんNGNG
じゃ、リタクファリングでもいいからさあ...
0040デフォルトの名無しさんNGNG
リファレクタリング
0041デフォルトの名無しさんNGNG
>>38
ヒヨコちゃん、ウマウマ
0042デフォルトの名無しさんNGNG
>>35

激しく謎な仕事だな
目的の無い再利用は矢口でオナニー
0043デフォルトの名無しさんNGNG
>>42
>>42って、DBマガジン別冊「SEの仕事」とか見て、
「よしっ、俺もSEなるぞ」とかいっちゃうヘタレな香りがする

#あれ、底辺だよな〜(苦笑
0044デフォルトの名無しさんNGNG
>#あれ、底辺だよな〜(苦笑

キモッ
オエオエオエェェェェ
0045デフォルトの名無しさんNGNG
底辺、って、「大変」の江戸表現なのでは?
0046デフォルトの名無しさんNGNG
俺もSEなるぞ、って「俺もSEだぞ」なのでは?
0047デフォルトの名無しさんNGNG
>>44 × 健康管理室逝って、そのまま戻って来なくてヨシw
>>45 ◎ 優秀なリファクタラーでつね。機転が効くとも言うがw
>>46 判定不能。頭蓋骨開いて、頭の中をリファクタリングしてもらって来てくらさい。。。
0048デフォルトの名無しさんNGNG
>>42
 >>42って、目先の利いた利益活動に向いていない。
 月いくらで、人生切り売りされる底辺生活に向いてるよw
0049デフォルトの名無しさんNGNG
どっちが底辺かの争いはマ板行ってやってくれ
0050デフォルトの名無しさんNGNG
レクチャーとか言い出しそうな勢いだ・・・
0051デフォルトの名無しさんNGNG
42はXPの原則のYou are gonna need itのYAGNIを言っているのだと思われ
0052デフォルトの名無しさんNGNG
YAGNIをレクチャーしてやったのは俺だとか言い出しそうな勢い・・・
0053デフォルトの名無しさんNGNG
XPマンセー厨房うぜぇ〜

リファクタリングってマーティンファウラが発明したんだと思ってるんだろうな。
それまでおまいは何ボヤボヤしてたんだ(プププ
0054デフォルトの名無しさんNGNG
>>53
OO を知る前から OO をしており、
デザパタが流行る前からデザパタを実践していた人ですね?
0055デフォルトの名無しさんNGNG
>>54
>OO を知る前から OO をしており、

こっちは、よほどの田舎者か、はたまた「独立歩行者」じゃないと、無理でしょうな。
あ、1968年以前からキャリアがあったら、話は別だけどw

>デザパタが流行る前からデザパタを実践していた人ですね?
こっちは、1987 OOPSLA以前の話か。
1980年代中頃には、PaloAlto Smalltalk80はあちこちにライセンスされてて、
そん中には、例の本に載ってるパターンも多用されてるから、
あながち無理じゃないでしょ。
確か、本郷の某研究室では、PaloAlto帰りの教授が、Smalltalkプロセッサとか、並列Smalltalk開発してたし、
神田の某ソフト販売店では、Digitalk smalltalk/Vあたりの販売が始まってたしw
0056だから、OOつうのはNGNG
>>51 XPのYAGNIの説明
>53 項書換系の説明
それぞれキボン。
0057でもコンピュータ・サイエンス(自然科学への計算機適用除く)って、NGNG
御意
0058デフォルトの名無しさんNGNG
隊長! 我々の乗っている船「OO号」は、
一体どこに向かおうとしているのでありますかっ!
0059デフォルトの名無しさんNGNG
>>58
船って何よ、フネって?
フネは波平の奥さんだよー?
0060デフォルトの名無しさんNGNG
>>56

You aren't gonna need it. (それは必要ない)

頭でっかちのOOオタクがやる将来のための抽象化
それはやるなというスローガン

抽象化によってコードは増大する
読みづらくなる
バグを出す
たいてい、要求は変わり、予測が外れ、役立たずのコードとなる
0061デフォルトの名無しさんNGNG
>>60
Javaの批判はよしたほうがいい。
0062デフォルトの名無しさんNGNG
>>57 :でもコンピュータ・サイエンス(自然科学への計算機適用除く)って、
> :今じゃ、OOよりも影響力小さいよねw通信とか情報ならまだしも

>「通信とか情報ならまだしも」
は?意味不明
0063デフォルトの名無しさんNGNG
>>62
は?意味不明。
コンピュータサイエンスって言葉、10年前と比べて聞く機会ぐっと減ったでしょ。
国内はやっぱ、電気通信学会>>>>情報処理学会>>>>ソフトウェア科学学会かな、とw
0064デフォルトの名無しさんNGNG
>>60
OOの人って、必ず師匠が居て、
その師匠が言ったことを1から10まですべて盲信しがちなんで、
サイエンス〜エンジニアリング指向の俺的に、議論がしにくい。

なんで、リファクタリングの話に、XPってような局所的なビジネス手法の話を絡めるのか、意味不明。
正直、予算と金と才能が有り余ってる場所に居れば、XPの精神を尊びつつ、XPの禁じ手を破り限界を極めることは、
極めて重要だと思う。Smalltalk作った連中だって、いろいろな経験と試行錯誤の末に、アレ作ったんでしょ。
要するに、他人の行動に制約を課して、他人の可能性を摘むような真似は、おやめなさい、つうこと。
0065デフォルトの名無しさんNGNG
いや、>>42,>>62は、リファクタリング厨にはYAGNAIの教えを突き付ければ、
目的喪失〜自己矛盾に陥って、静かになると信じ込んで居るんだよ。
リファクタリングなんて、項書換系〜数式処理〜数学的証明の、一バリエーションに過ぎないのにw
0066デフォルトの名無しさんNGNG
>65
そーいや、おまぃさんも昔は数式処理屋目指してたんだっけな。
きっかけは何よ?
0067デフォルトの名無しさんNGNG
>>66
学部必須講義のFORTRAN講習でFORTRAN言語、おばかちん過ぎ。
数式をプログラムに自動変換できないなんて・・・信じられない労力の浪費だ・・・俺が何とかしなくては(嗚呼勘違い
↓
数式処理というものがあるらすぃ。
↓
Dylanの作者が作った XLisp, XSchemeで数式処理の独学開始!
MITのScheme本(アルゴリズムの構造と実行、だっけ?あのλ教入信用パンフレット)と、CQ出版季刊誌の数式処理特集(゚д゚)ウマー
↓
学科のSunに Symbolics Macsyma (Sun3用)が入って、ビクーリ
Lisp文化の底知れないパゥワーに感動、UNIXとXとGNUとWIDEが気になり出す
↓
自宅PC購入、Smalltalk/VとMINIXとLisp三昧の日々
↓
隙間時間で卒論やら修論あげつつ (専門は物性基礎論〜物性計測のはずなんだが)、
心の中の本業は 386BSD上で DOE MAXIMAの稼働環境構築〜習得〜拡張準備と、
なんか型推論やら型システムの勉強、
あと岩波コンピュータサイエンスシリーズとか、構成的型論理とか構成的プログラミング本(PX)もつまみ食い、と。ついでに証明的プログラミング(BunBorgだっけ?)もw
↓
結局、数千万の実験装置を占有しながら、本業は捗らなかったため、おいしい将来は全部雲散霧消!
↓
そんなおいらですら、10年以上前の学生時代から数式処理やら証明的プログラミングの基礎にある項書換系を念頭に、手による項書換系シミュレーションとして、リファクタリングを実践していた。
↓
要するに、XPとリファクタリングは、もともと無関係ってこったw
0068デフォルトの名無しさんNGNG
>>63
コンピュータサイエンスは無駄と言っといて、訳ワカメ。流行り言葉と内容の区別がついて名下げ。
サイエンスとエンジニアリングの区別もついてなさげ。学会序列もレス内容との相関不明。
ま、いいけど。

項書換え云々もいいが、現実として副作用はどうよ。
つってもスタックがちょい増えたりするくらいか。
0069デフォルトの名無しさんNGNG
>>68
すいません、何をおっしゃっておられるのか、よくわかりません。
批判する時は、「おまいの発言は間違ってる」などという子供じみたやり取りは無しにして、
「おまいさんの〜という発言は、〜という事実に反しているから、間違いだ」と正確に発言していただけませんか?

あと、あなたが素晴らしいお考えをお持ちだとしても、スタック云々などという実装上の概念を持ち出した段階で、
非常にレベルの低い、はっきり言って話が判っていらっしゃらない方の発言と、まるで区別がつきません。
言語能力が低いから、そのように断片的な言葉しか吐けないのか、
あるいは、知らないことを知ったかぶりして、世間に迷惑をかけても気にしないが故のご発言なのか、
はっきりしていただけませんか?
0070デフォルトの名無しさんNGNG
>>69
またいつもの、知ったかぶりだよ。
リファクタリングと副作用、なんて今更なこと言い出す位だから、お里が知れてる。(大岡山の近所かな〜と苦笑
0071デフォルトの名無しさんNGNG
たしか立命館のセンセが、リファクタリングツール作ってたね。
あのツールの話をしれば、大岡山のご近所の彼も納得するのでは?
と言ってみるテスツ
0072デフォルトの名無しさんNGNG
実装=馬鹿ですか。そうですか。高貴な爺さんだこと。
0073デフォルトの名無しさんNGNG
>コンピュータサイエンスは無駄と言っといて、訳ワカメ。

日本語ちゃんと理解できないんですかぁ?

>流行り言葉と内容の区別がついて名下げ。

あ、日本語は辛うじて判るけど、僻みっぽいご自身を基準に相手を貶めることしかできないようですねw

>サイエンスとエンジニアリングの区別もついてなさげ。

これはおもろい。ここ1〜2カ月で、最高に笑えるジョークだw
さっそく、あなたの珍説を誤解珍くださいw

>学会序列もレス内容との相関不明。
>ま、いいけど。

因縁つけて、にげるんじゃねぇからよ、この糞ガキ

>項書換え云々もいいが、

知らない言葉はいつもスルー、これじゃぁいつまでたっても賢くなりませんね。
周りの人は皆気づいてるけど。

>現実として副作用はどうよ。

これ、マジ?かわいそうになってきた。。。

>つってもスタックがちょい増えたりするくらいか。

あ、答えわかるなら、さっさとご高説を誤解珍ください。おながいします。
できることなら、ソースではなく、操作的意味論あたりでおながいします。
0074デフォルトの名無しさんNGNG
>>72
スレの流れと無関係ですね。
デムパを発信するのは、お控えください。
0075デフォルトの名無しさんNGNG
>>67
>要するに、XPとリファクタリングは、もともと無関係ってこったw

もともとXPは、ビジネス至上主義に基づくノウハウ寄せ集め手法でしかありませんが、それが何か?

とゆーか、XPの話を、動かし難い真実であるかのように振り回すのは、ヤメにして頂きたいね、
経験浅い癖に。
0076デフォルトの名無しさんNGNG

>>68 さんは、もう戻ってきませんw
0077デフォルトの名無しさんNGNG
またいつもの、って漏れってそんなにゆーめーだったのかぁ。

項書換えは知らないが、プログラム実行を計算ととらえての
等価保証だろ? 現実にはメモリの上限もあるし、CPUコストもあるよ。
高貴な爺さんが、そんなのは馬鹿の戯言とのたまうのは勝手だがね。

>>学会序列もレス内容との相関不明。
>>ま、いいけど。
>因縁つけて、にげるんじゃねぇからよ、この糞ガキ
絶妙の引用と逃げだね。
0078>>68後半部分をリファクタリングしますた。NGNG
議題:リファクタリング
発言:「項書換え云々もいいが、現実として副作用はどうよ。
    つってもスタックがちょい増えたりするくらいか。 」
疑問点1:リファクタリングとは、本来、ふるまいを保ったまま、
    ソースコードを変更/再構成する技術を指す。
    これは項書換系における項の書換と、同種の技術である。
    しかし、実際は、ふるまいを保たないソース変更
    (いわゆる「いわゆるリファクタリング」)も使わないと、
    人間が意図するリファクタリングを完遂できない事が多い。
    これは、どーゆー事か?
    ・ふるまいを保たない、いわゆる「いわゆるリファクタリング」
     を使って、なぜ仕事を完成させる事ができるのか?
    ・一連の作業終了後、作業前のソースのふるまいは、完全に保たれるのか、
     あるいは、保たれない部分も出てくるのか?
疑問点2:>>68の「スタックが、ちょっと増えるだけ」という脳内妄想は、
    このスレ的にいかに扱うべきか?
    とりあえず、「ところでそのスタックは、どこに存在するのですか?」
    と尋ねたら、>>68は暴れないだろうか?
    
0079デフォルトの名無しさんNGNG
>もともとXPは、ビジネス至上主義に基づくノウハウ寄せ集め手法でしかありませんが、それが何か?
それはどうだろうね。
たしかに、ビジネスの実世界を前提にしてはいるけど、
きちんと現実世界に根ざして、創造性のないWFからの脱出を目指しているところがポイントかと。
そもそもOO自体、アカからは、技術検討はでてきても、基礎論てないんじゃないの?
0080デフォルトの名無しさんNGNG
>>77 現実にはメモリの上限もあるし、CPUコストもあるよ。

やっぱ、中学生〜高校生かぁ〜。
相手にして、損したぜ。
イパーイ勉強して、学校卒業してから、ここにおいで。
0081デフォルトの名無しさんNGNG
>>79
OO、基礎論?ハァ?

基礎論て、何を指すものか、勉強してから来い
0082デフォルトの名無しさんNGNG
やっぱ、アカ崩れの爺さんかぁ〜。
まあ、趣味としてはいい趣味だと思うよ。うん。
ソフトの仕事はしないほうがあんたと世のためだよ。
0083デフォルトの名無しさんNGNG
> 基礎論て、何を指すものか、勉強してから来い

すみません。用語が不適当でしょうか。(基礎論でどういう意味でしょうか)
なんとなく、OOって理論的な基盤の話を聞かないなぁ、と思ったもので。
型なら型理論とかあるし、計算としては計算量は明確にOが出るし、計算モデルもあるけど、
OOって、そういうカチッとした基盤がないのかなぁ、と。
0084デフォルトの名無しさんNGNG
>>79
そのWFってなんでしょうか?
可能でしたら、お教え頂けますと幸いです。

ところで、OOはアカではなく、現場から出た、とのご高説ですが、
私の存ずる範囲ではOOは、極めてアカに近い研究活動、もしくはアカにおける実践から発生した
といっても差し支えないのではないでしょうか?
例えば、上に上げた、項書換系/検証技術とリファクタリング/ユニットテストとの類似性は、
単なる偶然というよりはむしろ、前者に関する知識体系の積み上げがあり、
その上に花開いたものではないでしょうか?

コンピュータ自体、チューリングを始めとする数学者の積み上げがあり、
次に戦争による莫大な計算の実行という需要があって、はじめて現実のものとなった、
と記憶しておりますが、いかがでしょうか。
0085デフォルトの名無しさんNGNG
>>82
ん?しょうがくせいはおねむのじかんだよ。
おとなのかいわにくちはさむひまがあったら、
べんきょうしてなさい。おやすみ。
0086デフォルトの名無しさんNGNG
>>83
話がループしてるね。数年単位で。
おれ、そのテーマを数年前に2ちゃんで開陳した覚えがある。
未だにそんな事言ってる椰子がいるなんて、信じらんない。
米沢県かMSRにでも逝って、教えを乞うてはどうよ?逝ければ、の話だが。
0087デフォルトの名無しさんNGNG
>・ふるまいを保たない、いわゆる「いわゆるリファクタリング」
> を使って、なぜ仕事を完成させる事ができるのか?
仕事って言葉がよくわからんけど、
クライアントも変えられる状況だからだろ?

>・一連の作業終了後、作業前のソースのふるまいは、完全に保たれるのか、
「いわゆるリファクタリング」をしたあと?それなら当然否でしょ。
0088デフォルトの名無しさんNGNG
>>87
ハァ?
リファクタリングの意味 (上の方で他の人が書いてるね)すらおさえてない、
キティガイ発見。
0089デフォルトの名無しさんNGNG
東京キティか、出張32か?!

変な奴が常駐してるね、
引きこもりだから、何にでも食いつく食いつくw

でも、中身がないから、誰にも相手にされない、かわいそうな人。
0090デフォルトの名無しさんNGNG
何をのたまってるんだか分からん。
こんなんで仕事ができてるんだろうか。
0091デフォルトの名無しさんNGNG
鸚鵡とかインコとか、
意味も判らずに、人の口真似する動物って居るやん、

あの類いを相手にしてる気分だ。
書くこと書くこと、デタラメか思いつきか、はたまた過去レスのコピーばっか。(>>82,>>83,>>87)

糞だねこの板の粘着くんは。
009279NGNG
>>84
べつにアカを蔑視してないですよ。アカがなきゃ困るのは当たり前なわけで。

WFはウォーターフォールです。
現場にいないと信じられないかもしれませんが、現実にかなり残ってますよ。

OOやリファクタリング・ユニットテストの出自は、
少なくとも、後者はアカの助けがいるほど大層なものでもなく
現場から自然に生まれて当たり前、という感じがしますが、
ソースを持たないのでなんともいえません。
OOは、現場よりのアカ生まれ、って感じがします。感じがしてどうするだかあれですが。

>>86
そのスレの名前とかわかりませんか?
面白そうです。
0093デフォルトの名無しさんNGNG
>>90
ハァ?
リファクタリングの話題にすらついて逝けず、
「リファクタリングを手段として使う、上位概念としての仕事」という明白な範囲限定を理解できない
キティガイ発見。
0094デフォルトの名無しさんNGNG
>>93
たった二行のレスで俺を外基地認定できる君に乾杯。
ローブロウすぎてついて行けんわ。
0095デフォルトの名無しさんNGNG
>>91
なんか、いいかげんな思い込みを主張されてるだけらしいので、
反論するのも説得するのも、ただただ面倒です。

いい年こいて、駄法螺を書き込む事に熱中する大人が居るのは嘆かわしい事ですが、
そんな大人の掲示板に、嘘や虚勢に対する罪悪感すらお持ちでない子供が来ると、
とてもウザいです。皆、お互いの罪悪感をネチネチからかいながら、会話を楽しんでるのです。
あなたには、嘘・デタラメに対する罪悪感も、はたまたキラリと光る知性も、
全く感じられず、相手にしても疲れるだけです。

しばらく匿名掲示板に書き込むのはおやめになり、
もうちょっと勉強なり成長なりすることに専念されてはいかがでしょうか?


スレ名:
ム板:関数型言語2
情死す板:(OO関連キーワードか、「学術」をキーワードに探せ)

0096デフォルトの名無しさんNGNG
>>92
なんか、いいかげんな思い込みを主張されてるだけらしいので、
反論するのも説得するのも、ただただ面倒です。

いい年こいて、駄法螺を書き込む事に熱中する大人が居るのは嘆かわしい事ですが、
そんな大人の掲示板に、嘘や虚勢に対する罪悪感すらお持ちでない子供が来ると、
とてもウザいです。皆、お互いの罪悪感をネチネチからかいながら、会話を楽しんでるのです。
あなたには、嘘・デタラメに対する罪悪感も、はたまたキラリと光る知性も、
全く感じられず、相手にしても疲れるだけです。

しばらく匿名掲示板に書き込むのはおやめになり、
もうちょっと勉強なり成長なりすることに専念されてはいかがでしょうか?


スレ名:
ム板:関数型言語2
情死す板:(OO関連キーワードか、「学術」をキーワードに探せ)
0097デフォルトの名無しさんNGNG
鸚鵡とかインコとか、
意味も判らずに、人の口真似する動物って居るやん、

あの類いを相手にしてる気分だ。
0098デフォルトの名無しさんNGNG
おうむってなんて読むのでしょうか?
くだらない質問ですみません・・・
0099デフォルトの名無しさんNGNG
ケツ論:
ageて書くと、板専属の煽り粘着が来てスレを荒らす。
したがって、今後はsageで書く事にしよう。
                        
0100デフォルトの名無しさんNGNG
いや〜しかし、
頭が未発達なのに粘着されると、
こっちまで同類と間違えられそうで、
コワヒなぁ〜
0101デフォルトの名無しさんNGNG
>>34
このままでいい という理屈が意味不明だな
0102デフォルトの名無しさんNGNG
つまり、100を超えるスレの中で、
「このままでいい」という単語以外理解できなかった訳ですねw
しかも、「理屈が意味不明」とコメントするのが精一杯、という
洞察力や想像力の欠落っぷり。

もうちょっと、わかりやすい言葉で、概念を整理してしゃべってごらん。
今のままでは、君の言葉を誰も本当に理解できないよ。
君がコミュニケーションだと思ってるものは、
言葉足らずな子供の誤解に基づく喧嘩でしかないよ。
0103デフォルトの名無しさんNGNG
ここはリファクタリングについて語るスレなのか?

1 :デフォルトの名無しさん :04/04/13 22:41
会社で見つけた糞コード。
自分で書いたけど、なんかあやふやなしっくりこないコード。
そんなコードを、リファクタリングします!

うpろだ
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html
0104デフォルトの名無しさんNGNG
>>103
それを真面目にやると情報漏洩になるか、またはヤバイ部分を隠す手間が馬鹿にならなくなるので
だれもやりたがらないのでは?
アジャイルスレが閑古鳥が鳴いているので、ここで語ってもらってもいいんじゃないでしょうか。
0105デフォルトの名無しさんNGNG
>>103

>>1で、よりによって「会社で見つけた糞コード。」で「うpろだ」つう展開は、
普通それなりの覚悟と逃げ道ないと、できない。

むしろ、世の中の実際の「リファクタリング」は、
「他のソース参考に、新規ソース作成」ってな作業とか、
「古いシステムのミグレーション」ってな仕事の中に、
潜り込んでる。そして、それは、XPが勝手に制限してる制約の外側で慎重に行われている。
まぁ、XPとは予算も資源も桁違いな業務 (多い場合も少ない場合も含め)だからね。

最初の印象、及び、100レス経過後の現状を見て、
本スレは、現実のリファクタリング愛好家とは無関係のネタスレ、と判定しますた。
要するに、>>1は世間知らずなヒッキー。
0106デフォルトの名無しさんNGNG
どう見ても 1 は立て逃げだろ。
0107デフォルトの名無しさんNGNG
↑と、>>1がほざいておりますw
0108デフォルトの名無しさんNGNG
寧ろ、
Emacs上で動く定理証明系 BunBorg プロジェクト
(人手による証明の項書換の支援→リファクタリングと構成的プログラミングを結ぶ重要な仕事だ!) や、
はたまた DNAコンピューティングで有名なはぎゃー先生におでまし願って、
「世の中の全てのコードをリファクタリングする」ってなテーマで語ってもらってはどうよ?>>亞蛇居る愛好家の皆様
0109デフォルトの名無しさんNGNG
ていうか、このスレ自体のリファクタリングきぼんぬ。
0110デフォルトの名無しさんNGNG
>>109
じゃあまずユニットテスト作って(一休さんかよ)
0111デフォルトの名無しさんNGNG
>109
だからさ、それリストラクチャだって
01121NGNG
なんか、漏れがリファクタリングだと思っていた物が
「いわゆるリファクタリング」でしかなく、
また、それなら「テストケース付きでリファクタリーをうpしてもよかろーもん」って思ってたんだけど、
どっちかっていうとリファクタリング論議が盛んになっちゃって。

まあ、リファクタリング論議にも興味はあるのでそのまま続けるヨロシ。
0113デフォルトの名無しさんNGNG
いやマジ、著作権に差し障りありの、産業廃棄物にせざるを得ないソースが複数、どっかにあったと思う(察しろ)。
問題は、著作権以外にもあって、
最大の問題は、1000レス/1スレッド程度のスレで議論できるような代物じゃないって事。
社内にSourceForgeサーバ立てて、バザールでござーる方式で処置しようともしたんだけど、
そんなもんに取り組む暇人、社会人には居ないよね、っつう事。
0114デフォルトの名無しさんNGNG
あと、「いわゆるリファクタリング」の不純物は、
×「副作用」
ぢゃなくて
○「等価変換が必ずしも保証できない変換」
ってなニュアンスだったと思う。立命館のセンセのリファクタリング・ツールの説明では。
0115デフォルトの名無しさんNGNG
絶望的な産業廃棄物を、毎度、廃棄物っぷりに
ますます磨きをかけて納品してますが、何か?
0116デフォルトの名無しさんNGNG
わけわかめ。

某スレで漏れが産業廃棄物つったのは、
著作権の関係上、参照すらイャン!なコードの山が何故か手近に残ってて、
信義上、再利用することが不可能だから産業廃棄物つったんだけど。

産業廃棄物売って生計立ててらっしゃるとは、随分優雅なご身分ですね。
漏れの場合、売るコードより製造過程で捨てるコードの方が多いくらいだw
0117デフォルトの名無しさんNGNG
ユニットテスト付きリファクタリングって、
自動検証機構付の式変換作業と言い換えると、なんだか面白そう。

けど、式変換におけるホロノミック基底、
   λ式におけるβ簡約みたいな、
確実に結論を導くための手法がないのが、気掛かりだ。
だから答えを見つける面白みがある、とも言える。

とはいえ、所詮、単なる式変換。
はぎゃ〜先生が「命題=型、証明=プログラミング」のコラムに書いてた構成的プログラミングの世界に比べ、
地道な機械的作業って感じもする。
んんん?!それって今なら、テスト主導開発 (Test Driven Development?)に相当するのか?
型 ≒ 型チェック ∈ 表明 または テスト てな意味で。

結局、本体プログラムの作成で、Eiffelの表明やら、Assertionやら、ユニットテストみたいなもんを有効活用するのが本来大切なことで、
リファクタリングつうのは後戯みたいなもんでしかないのかと。


そ〜いや、あのプロジェクト、
Test First でもなければ、逆Vで仕様書とテスト仕様書同時に作るつう習慣も守ってないけど、
どうやってテストする気だろう・・・(´Д`)

0118デフォルトの名無しさんNGNG
↑さて、上の文は、何回文意を翻しているでしょう? (わざとやったんだよんw)
0119デフォルトの名無しさんNGNG
自分の文章のリファクタリングから始めてくれ。
0120デフォルトの名無しさんNGNG
表面的なレスばっか。ほんとつまらんやっちゃなぁ〜
0121デフォルトの名無しさんNGNG
変な人をいじるのが楽しいスレだからねえ。
0122デフォルトの名無しさんNGNG
>>117って羞恥って感情なさそう。その上いじってもつまらなそう。
0123デフォルトの名無しさんNGNG
あ、そう。
なんかつまんねぇ香具師ばっかだなw
さっさと市ね
0124デフォルトの名無しさんNGNG
匿名掲示板で、「その発言は恥ずかしい」とか当てこすり始める香具師の頭はからっぽw
0125デフォルトの名無しさんNGNG
ユニットテスト付きリファクタリングって、
自動検証機構付の式変換作業と言い換えると、なんだか面白そう。
0126デフォルトの名無しさんNGNG
だけど、リファクタリングには、
   数式処理におけるホロノミック基底、
   λ式におけるβ簡約みたいな、
確実に解を導き出すための手法がないよね?
なんか、研究されてないのかな?
でも解の評価軸が複数存在するから、解の導き方も経験的に探っていくしかなさそうだ。

結局リファクタリングって、あらかじめ決まっている答えを導くのではなく、
答えを見つける過程に関する経験則とテクニックだから、興味深いんだよね。
0127125NGNG
>>126
とはいえ、リファクタリングって単なる恒等変換。
はぎゃ〜先生が「命題=型、証明=プログラミング」のコラムに書いてたよーな
「構成的型論理」に基づく「構成的プログラミング」の世界に比べて、
地道な単純作業、機械的作業って感じがするよ!
0128126NGNG
ん?構成的プログラミング? 構成的型論理?!
そんなの、みんな知らないYO!

あんたが言いたいことって、もしかして、
今流行りの、テスト主導開発 (Test Driven Development?)あたりに関係するのか?
型 ≒ 型チェック ∈ 表明 または テスト てな意味で?
0129127NGNG
まぁ、そんなかんじ。

結局、本体プログラムの作成で重要かつ興味深いのは、
Eiffelの表明やら、Assertionやら、ユニットテストみたいなもんであって、
リファクタリングつうのは後戯みたいなもんでしかないのかと。
0130デフォルトの名無しさんNGNG



あ〜、しんど。
0131デフォルトの名無しさんNGNG
>>126
解を確実に導き出す戦略、ね。
で、解はなんでもありの最適化みたいな問題だから、
簡単に解をきめらんない、と。結局いろいろコード変えて、
全体のバランス調整してくしかない、と。

あらゆる人間の創造的仕事とは、実は非線形最適化問題の解決に他ならない(なんちて
0132デフォルトの名無しさんNGNG
可読性は神への信仰の次に重要なのです。
0133デフォルトの名無しさんNGNG
>>131
リファクタリングのメリットを B
リファクタリングの作業単位を W
として、|B|/|W|を最大にしる!

てな問題で、
最急降下戦略かなんかとって、
dB/dWが最も大きな方向に突っ込む、と。

んで、リファクタリングが作業者の手に余る複雑怪奇な代物になって、
リファクタリング・デスマーチもしくは作業が発散する、と。

結局、人間が操作可能なリファクタリングだけ追っかけても、
最適解には決して到達しないんではないか、と。
0134デフォルトの名無しさんNGNG
>>132
猿には猿の可読性、
雉には雉の可読性がある。

おれは、猿や雉にとっての可読性、ってのは、あんま考えたくないんだw
0135デフォルトの名無しさんNGNG
恒等変換ってアンタ……。
セルオートマトンとPentium4を一緒にするくらい滑稽な表現に聞こえるぞ?

機能が等価なのは、それがリファクタリングの必要条件なんだから当たり前でしょーが。
リファクタリングの第一目的は可読性の改善。表明やテストのような機能の改善は副産物なの。
可読性が計測不能だからって無視してくれるな学者殿。
0136デフォルトの名無しさんNGNG
リファクタリングって何ですか?
とてもよさそうなものだと思うのですが。
0137デフォルトの名無しさんNGNG
>>135
笑止。やってらんねぇなぁ〜。
だから、OO周りは頭の固い信仰者ばっかだwって愚痴りたくなるんだよ。

さっさと猿プログラミングでもすればぁ〜?
0138ポストOO指向NGNG
このフレーズが、バカっぽくて笑える
>機能が等価なのは、それがリファクタリングの必要条件なんだから当たり前でしょーが。
>リファクタリングの第一目的は可読性の改善。表明やテストのような機能の改善は副産物なの。

機能を等価に保つためには、表明やテストが必須だから、
明示的にせよ暗黙的にせよ、表明とテストは、リファクタリングの基礎付けなんだよ。

可読姓の改善、なんつうのは、文系チックなまやかしにすぎず、
その本質は、簡約化なんだよ。

全く、オブジェクト指向患者っつうのは、脳みその血の巡りが悪いやっちゃなぁ〜。
あ、オブジェクト指向すらわからんなんつーのは、論外の方向で。
0139デフォルトの名無しさんNGNG
こっちのフレーズも、腹の皮がヨジレタw
>恒等変換ってアンタ……。
>セルオートマトンとPentium4を一緒にするくらい滑稽な表現に聞こえるぞ?

複雑性の例として、Pentium4挙げるとは、発想が貧困なやっちゃなw小学生か?
#将来は、「この業務処理は、非常に複雑な業務知識が必要なので、文書化は難しい」
#なんつって、暗黙の前提と矛盾だらけの仕様書と格闘する、業務SEにでもなるつもりか?

Pentium系CPUと言えば、複数のパイプラインを持つRISC的なCPUコアに、
ix86アーキテクチャ互換の命令デコーダを付けた、
エミュレーションCPUとして、あまりにも有名。
やってる事の本質は、ix86命令からRISC的コアのネイティブ処理への恒等変換。
結果として、処理機構が大幅にリファクタリングできた、つう事。
0140デフォルトの名無しさんNGNG
平日午前からこんなとこで訳若欄事言い出す>>135って、
オブジェクト指向信者どころか、普通のスキルすら怪しい板常駐煽りだろ。

そんな暇人相手にマジレスするあんた
カコ良過ぎ。
0141デフォルトの名無しさんNGNG
>>139
リファクタリング患者は、
なんらかの高等戦略を採って、結果としてリファクタリングできるようなのは大嫌いなんだよ。

患者にできることって言えば、ドキュメントも読まずに(集中力がない)
まずコード片と格闘してコードを使い物にならなくして、
それから必死にデバッグして、元の機能をなんとか復元する、
それがリファクタリングだと、堅く信じてるんだよ〜(プ。

ある種の拷問で、まず穴を掘らせ、次に穴を埋めさせる、また穴を掘らせて、(略)
つう非生産的な反復単純作業をやらせるのがあるらすぃ。
それやられると、たいていの人は、希望を失い、健康を害するらすぃ。

見通しもなく、まずコードをいじくりまわしちまうお猿さんってのは、
自ら進んで拷問を受けてるようなもん。
哀れだけど同情に値しない。
0142デフォルトの名無しさんNGNG
pupupu
用語の誤り、誰も指摘しないのね。

ふつー、恒等変換て、無変換のことだろ。
リファクタリングが無変換じゃ、まるっきり話が通じねぇ。
もしかして、おまさんの逝ってるのは、
「等価な変換」じゃねぇ〜の?(プププ
0143デフォルトの名無しさんNGNG
Re-factor-ing とは、基底変換ではないか、と言って見るテスト。
0144デフォルトの名無しさんNGNG
基底変換つうより、
場の量子論や第二量子化における場、
を調整するイメージがあるな。

オブジェクト自身の定義よりも、
オブジェクトの間にある関係、相互作用こそが、調整対象ってな意味合いで。

すると、RDBでデータの関連を扱う(関係代数)つうのと、
連続性のある話になる。
結局、RDBとオブジェクト指向は、兄弟つうオチで。
0145デフォルトの名無しさんNGNG
・・・ってな観点から、
Relational DBをObjectに無理にマッピングする(例:Oracle Business Class for Java(BC4J))んでなくて、
Relationalのより自然な表現形態でとしてのObjectってな観点から、
Relational DB と Object DBの融合を図るのはいかがでしょうか?>> O-R mappingマニアの皆様
0146デフォルトの名無しさんNGNG
Re-factor-ing
再因子化
0147移動中の暇つぶし材料NGNG
漫才では、突っ込みにはつまんない一般常識、ヴォケには天性の才能が要求される。
同じことが、匿名掲示板にも当てはまる。例えば
ヴォケ  >>143-145
突っ込み >>146
どっちの方が、優れた洞察力が必要か、皆さんにはもうお判りだろう
0148デフォルトの名無しさんNGNG
ワカンネ
0149デフォルトの名無しさんNGNG
ネタがすべったときこそおまいら芸人の真価が問われるのでつよ。
0150デフォルトの名無しさんNGNG
シラネ
0151デフォルトの名無しさんNGNG
ゴミスレだな。
0152デフォルトの名無しさんNGNG
ソッスネ
0153デフォルトの名無しさんNGNG
彼女をリファクタリングできません。
0154デフォルトの名無しさんNGNG
シラネ
0155デフォルトの名無しさんNGNG
知ったか論理厨が暴れてるな。
リファクタリングが簡約なら、なんで表明だの単体テストだのをわざわざ用意して人間が手でやるんだよ。
Rename Methodだって、立派なリファクタリングであって、どういう名前に変えるかは可読性で決まるんだよ。

知ったかヒッキー君の脳内「リファクタリング」ではどうだか知らないけどね。
0156移動中の暇つぶし材料NGNG
うぜぇーよ、自称実践派。
前レス欲嫁ってんだ
0157移動中の暇つぶし材料NGNG
可読性最優先のリファクタリング一派(Mrtin Fawlerがボス)、激しくイラネ。
大体、名称変更みたいな幼稚な例出すセンスが笑える。
基礎ができてないオブジェクト指向信者(自称最先端、実はそろそろ遅れ気味)って、
話がおもしろくねぇんだよ。
0158移動中の暇つぶし材料NGNG
>リファクタリングが簡約なら、なんで表明だの単体テストだのをわざわざ用意して人間が手でやるんだよ。

も、もしかして、命名変更も手でやってるの?
0159デフォルトの名無しさんNGNG
>>157
 >>156は、また適当にデタラメ書いて煽って逃げたようですw
0160デフォルトの名無しさんNGNG
とりあえず、幼稚園児の漏れでも明確に解るのは、
>>156、>>157は、>>155をまったく否定できておらず、ブザマにいきり立って吠えてるだけ、
ということだ。
0161デフォルトの名無しさんNGNG
あ、スレ番ずれてる
>>156
 >>155は、また適当にデタラメ書いて煽って逃げたようですw


0162デフォルトの名無しさんNGNG
とりあえず、>>155=>>160は、子供の喧嘩を始めたいらしいですw
0163デフォルトの名無しさんNGNG
> 158 :移動中の暇つぶし材料 :04/04/22 02:08
> >リファクタリングが簡約なら、なんで表明だの単体テストだのをわざわざ用意して人間が手でやるんだよ。
> も、もしかして、命名変更も手でやってるの?

論理が大層お好きなようだが、リアルでの論理の実践はとんと通じないようだ。
それとも、自作自演の失敗かな?(そして本人は成功したつもりなのが>>161。)
0164デフォルトの名無しさんNGNG
>>155
> 知ったか論理厨が暴れてるな。

うぜぇーよ、自称実践派。前レス欲嫁ってんだ (>>156)


> リファクタリングが簡約なら、なんで表明だの単体テストだのをわざわざ用意して人間が手でやるんだよ。

表明やユニットテストは、リファクタリング前後の等価性を保証するための仕様記述と考えろ。


> Rename Methodだって、立派なリファクタリングであって、どういう名前に変えるかは可読性で決まるんだよ。

可読性最優先のリファクタリング一派(Mrtin Fawlerがボス)、激しくイラネ。
大体、名称変更みたいな幼稚な例出すセンスが笑える。
基礎ができてないオブジェクト指向信者(自称最先端、実はそろそろ遅れ気味)って、
話がおもしろくねぇんだよ。 (>>157)


> 知ったかヒッキー君の脳内「リファクタリング」ではどうだか知らないけどね。

>>156: 移動中の暇つぶし材料 (HN欲嫁)
うぜぇーよ、自称実践派。前レス欲嫁ってんだ (>>156)

とりあえず、>>155=>>160は、子供の喧嘩を始めたいらしいですw (>>162)


0165デフォルトの名無しさんNGNG
>>161
どうでもいいけど、スレ番じゃなくてレス番だよ
0166デフォルトの名無しさんNGNG

>>157
> 論理が大層お好きなようだが、リアルでの論理の実践はとんと通じないようだ。

正直、いみふめな寝言は寝て掻け、って感じw
とりあえず、意味不明な>>157の相手をしちゃる、と:

>>157が言うには、論理は使えない(?)とかいう話なんで、

・今後>>157は条件式もbooleanも使うのやめて、
 全部文字列比較と数値比較で処理を掻くこと。

・仕様と実装、テスト結果の一貫性を論理的に示すと、
 >>157のポリシーに反する事になる。
 従って、今後>>157は自分の掻いたプログラムの正当性を主張する
 事ができなくなる。

・そもそも、>>157の議論には、一切の論理性が保証されないので、
 以降 >>157はスルーの方向でw
 
0167166NGNG
あ、↑は >>157ぢゃなくて、>>163の間違い。

>>163
> 論理が大層お好きなようだが、リアルでの論理の実践はとんと通じないようだ。

正直、いみふめな寝言は寝て掻け、って感じw
とりあえず、意味不明な>>163の相手をしちゃる、と:

>>163が言うには、論理は使えない(?)とかいう話なんで、

・今後>>163は条件式もbooleanも使うのやめて、
 全部文字列比較と数値比較で処理を掻くことw

・仕様と実装、テスト結果の一貫性を論理的に示すと、
 >>163のポリシーに反する事になる。
 従って、今後>>163は自分の掻いたプログラムの正当性を主張する
 事ができなくなるw
 (やっぱ、ポリシーは大切だしねw)

・そもそも、>>163の議論には、一切の論理性が保証されないので、
 以降 >>163はスルーの方向でw
 

0168デフォルトの名無しさんNGNG
自らわざわざ、
リアルでの論理の実践はとんと通じないことを
そこまで徹底的に実証しなくてもよいのに。。。

あと、「スレ番」間違いすぎだよ、論理を使えないけど論理好きの君。
0169デフォルトの名無しさんNGNG
(´-`).。oO(なんで「論理は実践で使えない」だろう?)
(´-`).。oO(なんで「論理は実践で使えない」と妄想する人がリファクタリングスレに粘着するんだろう?)
(´-`).。oO(なんで>>163は「ウソツキのクレタ人」なんだろう?)
0170デフォルトの名無しさんNGNG
このスレの混乱振りをリファクタリファクタ。
0171デフォルトの名無しさんNGNG
(´-`).。oO(なんで>>168は中身のない主張を必死にするんだろう?小学生?)
0172デフォルトの名無しさんNGNG
小学生が、なんでこんな深夜に2ちゃんをうろついてるんだろうね。
しかも主張内容がハチャメチャ。論理は実践では使えない、つう>>163は、
ご自身の主張を、「論理を一切使わずに」どうやって主張するつもりなんだろう・・・?!
なんか、かわいそうになってきた
0173デフォルトの名無しさんNGNG
きみはまずこくごをおべんきょうしようね。あと、どうとくもね。
0174デフォルトの名無しさんNGNG
(´-`).。oO(>>163が言う論理って、どの論理なんだろう?俺様論理?古典論理?)
(´-`).。oO(>>163は、どんな経験に基づいて、論理は実践では使えない、と結論したんだろう?)
0175デフォルトの名無しさんNGNG
(´-`).。oO(論理を否定するプログラマ?ってどんな言語を使ってどんなコードを書くんだろう?)
(´-`).。oO( 例示によるプログラミングレス・プログラムでも使うのかな?)
0176デフォルトの名無しさんNGNG
論理を否定するニュータイプ・プログラマ、キタ━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(゚  )━(∀゚ )━(゚∀゚)━!!!!
0177デフォルトの名無しさんNGNG




論理を一切使わずに、リファクタリングを実践する、超人プログラマが発生したスレに
記念カキコ
0178デフォルトの名無しさんNGNG
記念真紀子
0179デフォルトの名無しさんNGNG
超人プログラマの論理否定論☆記念かきこ
0180デフォルトの名無しさんNGNG
「論理は実践では使えない」なんてだれもいっていないよ。
こくごのおべんきょうをさぼっちゃだめだよ。あと、どうとくもね。
それから、おいしゃさんにいって、わいじーのいー(えーじーがたかいけど)といって
そうだんにのってもらおうね。
0181デフォルトの名無しさんNGNG
(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)
      れすしてあげたから、おとなしくしようね
(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)(・∀・)
0182新興宗教「リアルでの論理の実践はとんと通じない」教,誕生の瞬間NGNG
163: デフォルトの名無しさん 04/04/22 02:17
> 158 :移動中の暇つぶし材料 :04/04/22 02:08
> >リファクタリングが簡約なら、なんで表明だの単体テストだのをわざわざ用意して人間が手でやるんだよ。
> も、もしかして、命名変更も手でやってるの?

論理が大層お好きなようだが、リアルでの論理の実践はとんと通じないようだ。
それとも、自作自演の失敗かな?(そして本人は成功したつもりなのが>>161。)


168: デフォルトの名無しさん 04/04/22 02:42
自らわざわざ、
リアルでの論理の実践はとんと通じないことを
そこまで徹底的に実証しなくてもよいのに。。。

あと、「スレ番」間違いすぎだよ、論理を使えないけど論理好きの君。
0183新興宗教「リアルでの論理の実践はとんと通じない」教,誕生の瞬間NGNG
いや〜、新興宗教って凄いですね、
深夜に、いたいけな小学生使って
新興宗教「リアルでの論理の実践はとんと通じない」教
の普及活動してるとは。。。
・・・児童福祉法違反で摘発されないのかぁ〜?w

で、信仰内容が随分難解だね、
「リアルでの論理の実践はとんと通じない」?
なにこれ?日本語なの?

分かち書きすると
「リアル での
論理の 実践
 はとん と 通
じない」??
5・7・5・3か。自由形式の俳句かな?

「リアル での 論理の実践派 豚と通じない」??
「リアル での 論理の実践 鳩 んと 通じない」??
宗教でおかしくなっちゃった人の発言は、難解だな。
0184デフォルトの名無しさんNGNG









(´-`).。oO(>>163が言う論理って、どの論理なんだろう?俺様論理?古典論理?)
(´-`).。oO(>>163は、どんな経験に基づいて、論理は実践では使えない、と結論したんだろう?)
0185デフォルトの名無しさんNGNG
こくごのおべんきょうをおしえておげるね。
・((省略された)主語「きみは」)論理が大層お好きな 述語1「ようだ」が、
  リアルでの論理の実践はとんと通じない 述語2「ようだ」。
・論理を 体言修飾1「使えないけど」 体言修飾2「論理好きの」 体言「君」。
0186デフォルトの名無しさんNGNG
いや〜、新興宗教って凄いですね、
深夜に、いたいけな小学生使って
新興宗教「リアルでの論理の実践はとんと通じない」教
の普及活動してるとは。。。
・・・児童福祉法違反で摘発されないのかぁ〜?w

で、信仰内容が随分難解だね、
「リアルでの論理の実践はとんと通じない」?
なにこれ?日本語なの?

分かち書きすると
「リアル での
論理の 実践
 はとん と 通
じない」??
5・7・5・3か。自由形式の俳句かな?

「リアル での 論理の実践派 豚と通じない」??
「リアル での 論理の実践 鳩 んと 通じない」??
宗教でおかしくなっちゃった人の発言は、難解だな。

0187デフォルトの名無しさんNGNG
あと、じしょのひきかたもおぼえようね。
http://dictionary.goo.ne.jp/search.php?MT=%A4%C8%A4%F3%A4%C8&kind=jn
0188デフォルトの名無しさんNGNG
論理を一切使わずに、リファクタリングを実践する、超人プログラマが発生したスレに
記念カキコ
0189デフォルトの名無しさんNGNG
(´-`).。oO(なんで「論理は実践で使えない」だろう?)
(´-`).。oO(なんで「論理は実践で使えない」と妄想する人がリファクタリングスレに粘着するんだろう?)
(´-`).。oO(なんで>>163は「ウソツキのクレタ人」なんだろう?)
(´-`).。oO(>>163が言う論理って、どの論理なんだろう?俺様論理?古典論理?)
(´-`).。oO(>>163は、どんな経験に基づいて、論理は実践では使えない、と結論したんだろう?)
(´-`).。oO(論理を否定するプログラマ?ってどんな言語を使ってどんなコードを書くんだろう?)
(´-`).。oO( 例示によるプログラミングレス・プログラムでも使うのかな?)
0190デフォルトの名無しさんNGNG
まちがいや、しらないことは、はずかしいことじゃないからね。きにしなくていいよ。
でも、ひとにめいわくをかけることは、やっちゃだめだよ。
0191デフォルトの名無しさんNGNG
              ファサァ
         ∧_∧   
         ( ・∀・)       ))
         /つ( ̄`ヽO_ノ⌒ヽ
        ノ   )        \ ))
       (__丿\ヽ ::    ノ:::: )
           丿        ,:'  ))
        (( (___,,.;:-−''"´``'‐'


            ∧_∧
            ( ・∀・ ) < おやすみ〜
            /  _ノ⌒⌒⌒`〜、_
       ε( ̄⊂人 //⌒   ノ  ヽ)  
       ⊂ニニニニニニニニニニニニニニ⊃
0192デフォルトの名無しさんNGNG
技術的な内容が皆無だな。
反駁するためだけのレスしかない。
0193デフォルトの名無しさんNGNG
>>192
 >>100-145 嫁。
 昨晩は基地が降臨して荒れたけどな
0194デフォルトの名無しさんNGNG
リファックタリング
0195デフォルトの名無しさんNGNG
>>193
ざっと見たけど、この電波基地は50あたりから延々と粘着とジエンを続けてる模様。
夕べは、突っ込みにさくっと致命傷を食らって断末魔の叫びをあげたようだが、さすがに恥ずかしくてこのスレにはもう来れまい。
0196デフォルトの名無しさんNGNG
今なら、まだファウラーが日本にいるはずだ。
直接会って話つけたらどうだ?>粘着電波
0197デフォルトの名無しさんNGNG
粘着デムパ >>50 大人気だな(藁
0198デフォルトの名無しさんNGNG
デムパ基地のリアルの絶望的な悲惨さは目に見えてる。
最期にネットでこれだけ目立てて本望じゃろうて (-人-)チーん
01991NGNG
すみません、>>1で書いたようなことを実現するためには、
リストラクチュアスレを立てた方がいいんでしょうか?
0200デフォルトの名無しさんNGNG
>>199
仮に別スレにしてもだれもupしないと思うな。理由は>>104とか>>105とか。
0201デフォルトの名無しさんNGNG
>>199-200
「鉛筆で書かれた極秘文書をTexで清書するから晒して」
って言ってるようなもんだからね。
0202デフォルトの名無しさんNGNG
おまいらの宿題リファクタリングさせてください

の方がよかったな
0203デフォルトの名無しさんNGNG
結局リファクタリングって、
場の量子論や第二量子化における場、
を調整するイメージがあるな。

オブジェクト自身の定義よりも、
オブジェクトの間にある関係、相互作用こそが、調整対象ってな意味合いで。

すると、RDBでデータの関連を扱う(関係代数)つうのと、
連続性のある話になる。
結局、RDBとオブジェクト指向は、兄弟つうビジョンでw
0204デフォルトの名無しさんNGNG
キ(ry
関係、相互作用こそが、調整対象であるという仮説の妥当性はさておき、
そこから、それがRDB(関係代数)と連続的な話であるという結論は
飛躍が過ぎませんか?
0205デフォルトの名無しさんNGNG
ごめん、量子化ってわかんないや。
喩えるなら、もうちょっと一般社会を想定した言葉で言ってくれる?
0206デフォルトの名無しさんNGNG
>>204-205
え、素粒子物理〜メゾスコピック物理の経験者向けな話だから、
今はきみらは理解しなくていいんだよ。

俺の知ってる範囲では、
物性研出身者で、そんなような類いの思考をしてる人が居たな。



>>204。
そっちは、さほど飛躍してない方の話だよw
物理屋の洞察って、だいたいそんな感じの飛躍が話が多いんだ。
複数の対象や理論の間に、直観的に、なんらかの関連がつけられて、
その関連付けの詳細は、単なる退屈な事務作業だから、
後で数学屋や工学屋に決着付けてもらうことにして注意深く放置。
で、自分は、本当に解決すべきコアな問題に専念、てな感じ。
・・・そーゆーことやると、工学屋は凄く嫌な顔するけどね〜飛躍し過ぎって。
   でも、仕事の分担が違うんだから、しょうがない。
0207デフォルトの名無しさんNGNG
リファクタリングの例として、
変数の名前変更上げちまうような幼稚園生にナニを言っても、
馬の耳に念仏、
0208デフォルトの名無しさんNGNG
結局デムパは、自殺モンの大恥晒しといて、臆面もなく現れては粘着&ジエンを繰り返し、
末永く電波を発信し続けましたとさ。ちゃんちゃん。
0209デフォルトの名無しさんNGNG
↑デムパ発見
0210デフォルトの名無しさんNGNG
大自爆コイても余裕で再乱入、しかも即自演。こいつぁ本物だわ。
0211デフォルトの名無しさんNGNG
>>210 さっさと病院戻れ。自主的に戻らないようなら、強制入院させるぞ。


いゃ〜、春だねぇ。なんか、ソニー板で見たことある悲惨な気違いが、
春の陽気につられて、地べたからはいずり出してきちまったよ。
彼を見分けるのは簡単!
1. キーワード「悲惨」「リアル生活」「気違い」「自爆」
2. 行動   平日昼間から、2ちゃん三昧の日々。
       職場から書いてるとは到底思えない。
       自我が崩壊してる人物に特徴的な酔っ払いの喧嘩みたいな書き込みが特徴。
3. 振る舞い 何の脈絡もなく、相手に突然絡みだし、何週間も小汚い罵声を浴びせ続ける
0212デフォルトの名無しさんNGNG
>>211
 >210みたいな「悲惨な気違いデムパ」アンチパターンを、
 リファクタリングで改善しる!
0213デフォルトの名無しさんNGNG
>>212
 措置入院が適切だと思われ。処置不能。
0214デフォルトの名無しさんNGNG
なんだよこのスレ・・・
0215デフォルトの名無しさんNGNG
デムパをモデリングしてリファクタリングするのが、火急の課題になっちまったスレですが、伺か?

それもこれもみんな、引きこもりで非常識なスレ立てた >>1 の責任か、と。
0216デフォルトの名無しさんNGNG
>>212
マジレスすると、リファクタではなくリストラが必要。
振る舞い自体がバグなので、211=212=213=「悲惨」な「リアル生活」の「気違い」で「自爆」したモノの削除が必須かと。
0217デフォルトの名無しさんNGNG
>>216って、リファクタリングの話題も振れない気違いの癖に、
なんでこのスレに粘着してるのか、それが謎。
「リストラ」も彼のトラウマなんだろうな。。。悲惨な人だ。

って事で、俺はワインなど嗜みながら、優雅にキティちゃんをリファクタリング中。。。

そーいや、キティちゃんの版権所有元の業務システムやってる会社が、
求人募集してたけどw、キティ繋がりで >>216、応募してはいかが?
最低限J2EE技術は必要だけど、ヲーターフォールでダラダラ仕事してるみたいだから、
あんたの能力に最適かもよw
0218デフォルトの名無しさんNGNG
しょっちゅうagaってると思ったら、しょーもねー糞スレだな。
sageれ。2度とageんな。
0219デフォルトの名無しさんNGNG
誰も気にしねぇーよ、この程度の煽り。
それをいちいち気にしてる >>218 は、間違いなく >>216の同類 (つか本人
0220デフォルトの名無しさんNGNG
リストラ対象者 >>216、どこいっちまったんだろうなw

身元確認のできるメールアドレス書いたら、紹介状送ってやるよ。
それで、おまえの悲惨な失業生活もジ・エンドな訳だがw
0221デフォルトの名無しさんNGNG
なんでwつけて必死なんだよ。
リファクタリングについて語らねぇなら うぜぇからsageろボケ
0222デフォルトの名無しさんNGNG
いや、だから、>216がリファクタリング三昧の生活を送れるように、
再就職先を紹介しようとしているわけだが。

それもこれも、このスレのガン=>>216をスレから排除するための、準備作業なんだがゲラゲラ
0223デフォルトの名無しさんNGNG
>>214
2ch 初心者な大学生が研究室で得た知識をぬるく吐きつつ煽ってるスレ。
0224デフォルトの名無しさんNGNG
>>216って、例のネットワーク系盗作鬼畜作家のシモベやってた、有名あめざーに口調が似ているね。
ちなみに、彼のご主人様は、家族を精神的にいたぶって自殺に追い込むのが趣味、とか
0225デフォルトの名無しさんNGNG
ああ、あの、有名なノンフィクション・ライターと名前がそっくりな人、ねw
0226デフォルトの名無しさんNGNG
>>225
2ch初心者といわれて、雨増ネタかよ。(藁
wやめれ→ゲラゲラ の小学生的思考には笑わせてもらったから、ゲラゲラやめんなよ。
0227224NGNG
そうそ、それそれ。

ちなみに俺は十数年前、自殺者/事故死者が多発する某所に、
何も知らない一般人装って潜入してた事もあるんで、それ系への免疫はばっちし持ってる。
あそこは悲惨な現場だったな〜、名誉も地位もある人が、バタバタ死んでく不可思議。
監督官庁は、なんか気付いてた筈だけどw たしか、最近それ関係のニュースネタが出てたっけ。

例のノンフィクション・ライターも、社会正義派を装うばっかじゃなくて、
そーゆー人間のカルマが起こす悲惨な社会現象を扱えばいいのに、ねぇ。

0228デフォルトの名無しさんNGNG
>>216

はやく、メールアドレス知らせろよ。
おまえが社会復帰する最後のチャンスかもしれんゾw
0229デフォルトの名無しさんNGNG
224=225=227=228、こいつは一人でなにやってんの?
0230デフォルトの名無しさんNGNG
     ,r;;;;ミミミミミミヽ,,_
    ,i':r"    + `ミ;;,
    彡        ミ;;;i
    彡 ,,,,,、 ,,,,、、 ミ;;;!
     ,ゞi" ̄ フ‐! ̄~~|-ゞ,
    ヾi `ー‐'、 ,ゝ--、' 〉;r'  
    `,|  / "ii" ヽ  |ノ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     't ←―→ )/イ   <  ミサイルが飛んできたって何だって 
       ヽ、  _,/ λ、  \ このスレは非戦闘地域です!!
    _,,ノ|、  ̄//// \、  \_____________
_,,..r''''"   | \`'/  /    ̄`''ー
      |  /\  /          
0231デフォルトの名無しさんNGNG
> 「悲惨」な「リアル生活」の「気違い」で「自爆」したモノ

なんなんだろう。
0232デフォルトの名無しさんNGNG
>>216は、デムパ。
>>231は、この期に及んで、未だに傍観者装ってリファクタリングの話を振れない無能者。
どっちも逝ってよし。

今日はテレビの方がおもろいや。
0233デフォルトの名無しさんNGNG
このスレで、リファクタリングのネタが振られたことがあっただろうか。
0234デフォルトの名無しさんNGNG
>196

ファウラーは,信頼できる人なのだろうかと疑ってしまう今日この頃.

うちの会社はOOの教育事業をいくらかしているが,「かれのblogの翻訳は
読まないように」「引用しないように」と御ふれが出ている(w

感覚的な意訳をしているなと思う箇所は間違っている場合が多い.
あの内容とあの翻訳を必要とする人のことを考えると
間違いがあってはならないと思うのだが・・・.

誤訳はしかたなくそのためレビューが大切になるわけだが,
翻訳している人は,日記の中で自分のことは棚に上げ
他の翻訳本の著者をバカ扱いしたり,
感覚的に幼稚な批判や批評が多く,
あれではまともな人は相手をしなくなり,
まともなレビューも行われないと・・・・.

ファウラーを身にまとうことで強くなったと勘違いをしてあのような物言いに
なってしまう気持ちもわかるのだが,
この業界,皮肉屋や貶し屋が多いことが仕事を楽しめなくしてしまっている
一面があると思われ,ファウラーの思いがどうであれ,じつにむなしい.
0235デフォルトの名無しさんNGNG
>>234
レスがよれてるよ。支離滅裂。

> あれではまともな人は相手をしなくなり,
ミミが痛いっす。
0236ミナツキ サヤ ◆SAYAC2HJWE NGNG
236
0237デフォルトの名無しさんNGNG
春休みってまだ終わってなかったの?
0238デフォルトの名無しさんNGNG
GWはじまりますた
0239デフォルトの名無しさんNGNG
いやはやGWだな
0240デフォルトの名無しさんNGNG
ふぁうらーって、なんで偉いんだっけ?
オブジェクト嗜好を斜め上から眺めてる俺には、
マニヤの皆様の感覚がよーわからん。

もしかして、XP人気と「難解」アナパタのお陰で、教祖になっちまったの?
0241デフォルトの名無しさんNGNG
単に『リファクタリング』の著者だからだろ。
0242デフォルトの名無しさんNGNG
漏れのリファクタリングの精神的なお師匠さんは、やっぱはぎゃ〜先生の7びっつコラム、のような気がする
0243デフォルトの名無しさんNGNG
>>234
どちらのオフィスの方でしょうか?
念のため、お聞かせください。

なお、あなたのおっしゃること、
わたしはよく知らないのですが、非常に興味があります。
8月のOOシンポジウム、とりあえず出席しますんで、そこで
詳しいお話を伺う機会をいただけましたら、幸いです。
かしこ
0244デフォルトの名無しさんNGNG
bliki_jaのひと?♀だったの?ほえぇぇ。。。
逃げんなよ>234
0245デフォルトの名無しさんNGNG
彼女をリファクタリングしたい
0246デフォルトの名無しさんNGNG
>>244
つーか、ここに書いている時点で。
0247デフォルトの名無しさんNGNG
ここってダサイコードを美しく書き直すスレじゃないの?

用語ばかり詳しい連中が自己顕示欲を満たすだけのスレになっちゃってるのが残念。
なんでそう教条的にしか物事を捉えられないのだろう。
0248デフォルトの名無しさんNGNG
坊やだからさ。
0249デフォルトの名無しさんNGNG
>>247 それは、アナタの思い違い。アナタがどれ位の深さで何年仕事してきたのか知らないが、単にアナタの勉強不足を人のせいにされても困るにゃん
0250デフォルトの名無しさんNGNG
>>247
だれもコードをupしないのでこうなりました。
現実的に考えれば、業務で書いてるコードを公開しても許される人間は限られるので
だれもupしないだろうな。ありえそうなのは、ソース公開しているフリーソフトぐらいか。
そんなに1のお題に固執するなら自分でupするよろし。

>>249
247は1のお題とスレの現状のギャップを言っているだけ。
表現があのとおりなのはリファクタリングの議論している奴らを貶めたいだけで
勉強不足かどうかは関係ないんじゃないか?
0251デフォルトの名無しさんNGNG
そのまえに、OOってなんでみんな伏字にしているんだろうと疑問に持った。

リファクタリングのスレじゃないの?
VB4で作ったアプリ(今でも現役)をVB.NETにリファクタリングしてくれる人を
募集中です。9期開発で(1期1年、年4回リリース)もう、ボロボロなのに
まだVB4で追加・改善するなんてイヤーーーーーーーーっ
02521NGNG
>>251
多分それはリファクタリングじゃなくてリストラクチュアリングだと思うけど、
でも、コードを晒しなさい。漏れがなんとかしてあげたいのです。
未熟だけど。
C++とJavaとPerl4しか触った事無いけど。
がんがります。あなたの為なら。
0253デフォルトの名無しさんNGNG
>>251 普通は移植というよね、ソレ。ま、職務規程に反しない程度にガンガレ。
0254デフォルトの名無しさんNGNG
>>251
VB.NETも、将来VB4と同じ道を歩むかもしれないぞ?
せっかくの.NETなんだから、他の言語にしたら?
0255デフォルトの名無しさんNGNG
>>254
そんなことはない、VB.NETも捨てたものじゃないぞ。まあこれでも読んで考え直してくれ。
ttp://www.atmarkit.co.jp/fdotnet/vbcheer/index/index.html
ttp://pc5.2ch.net/test/read.cgi/prog/1084413094
0256デフォルトの名無しさんNGNG
VBは自分でライブラリ作って溜め込んでいく発想ができない言語。
いますぐ使うのやめたほうがいいよ。
0257デフォルトの名無しさんNGNG
たしかにつぶしが利かないねえ。
リストも扱えないし。
まあ使わないにこしたことないな。
0258デフォルトの名無しさんNGNG
>>255
その記事書いた奴キモイな。
関係ないがVBScriptとVBって構文違うのな。
WSH書いててアホらしくなった。
0259デフォルトの名無しさんNGNG
M$なんて信じるな、あふぉ。
0260デフォルトの名無しさんNGNG
つーか、VB4からVB.NETで移植という工程が発生する時点で
VB=クソ言語だというのがわからないのか。
ま、VB厨にはわからないんだろうな。
納得。
02611NGNG
>>258
その記事の「VBがC#やJavaより冴えている1つの理由」に
「switchのcase節ごとのbreak記述が要らない」旨が記述されていました。
きっとそのくらいしか有利な事が無いんだろうと思った。

きっと、VB厨を装ってVBを貶めようとしてんだと思うよ。
0262デフォルトの名無しさんNGNG
>まだVB4で追加・改善する
別に問題ナカロ?
こぼらもいまだに残ってるし
0263デフォルトの名無しさんNGNG
リファクタリングやりてーけど、こんな書き方誰も
してないからってやらせてもらえねーよ。
糞コード書いて怒られるのは納得だが、糞コード
書かないから怒られるっていうのはたまらん。
0264デフォルトの名無しさんNGNG
>こんな書き方誰もしてないから

うpしてみたら?
02651NGNG
保守野鉄朗
02661NGNG
kept alive
0267デフォルトの名無しさんNGNG
C++でもポインタを駆使したプログラムはリファクタリングの対象外。
02681NGNG
>>267
なんで?
他の種類のコードと同じで、テスト要件がしっかりしてれば、
全然平気でリファクタリングできそうだけど。
0269デフォルトの名無しさんNGNG
>267 はヘボ
0270デフォルトの名無しさんNGNG
>>267
リファクタリングの観点からすれば大域変数を扱うのと大差無いと思うが。
0271デフォルトの名無しさんNGNG
>>267はピアソンの「リファクタリング−プログラミングの体質改善テクニック」
つまり和訳本のP385〜から書いてある事だぞ。

>>267がヘボって事は、原著 Refactoring:Improving The Design of Existing Code
の著者がヘボって言ってるのと同じだな。>>268-270こそヘボ。
0272デフォルトの名無しさんNGNG
>>271
> >>267がヘボって事は、原著 Refactoring:Improving The Design of Existing Code
> の著者がヘボって言ってるのと同じだな。
これから
> >>268-270こそヘボ。
これがでてくるのはなぜだ?
0273デフォルトの名無しさんNGNG
>>272
頭悪いな。説明する気も起きんよ。
0274デフォルトの名無しさんNGNG
>>273
おまえの顔をリファクタリングしてやろう
0275デフォルトの名無しさんNGNG
外部インターフェイスは変えないのがリファクタリングです。
0276デフォルトの名無しさんNGNG
>>273は引き篭もりなので、顔は外部インターフェイスではありません。
0277デフォルトの名無しさんNGNG
>>276
クックックッお前も相当の粘着だな。これだからヘボは困る。
0278デフォルトの名無しさんNGNG
>>272の頭の中では
(A->B)->(not A->not B)
という論理が成り立ちます。
0279デフォルトの名無しさんNGNG
違うよ単なる対偶だよ。アホがもう一人増えたか。
0280デフォルトの名無しさんNGNG
>>277
残念、このスレ初参加です。あなたの外部インターフェイスは2chのみですか?
0281デフォルトの名無しさんNGNG
>>280
初参加で引き篭もりってあーた。。。超能力でもあるんですか?(;´Д`)
もしかしてあれ?部屋の中で一人でいると勝手に宇宙人の声が頭の中に
入って来たりしませんか?ププ
0282デフォルトの名無しさんNGNG
>>281
もういいよ…もういいんだ 君は十分がんばった
02831NGNG
>>271
俺は「いかにテスト要件がしっかりしていても、
ポインタを駆使したコードがリファクタリング対象となり得ない」
理由を知りたい。
0284デフォルトの名無しさんNGNG
>>283
【いかにテスト要件がしっかりしていても】とは君が>>267の発言とは別に
勝手に付けたものだろ。

君が勝手に脳内補完したんだから、後は自分で考えろ。
0285デフォルトの名無しさんNGNG
>>284
>>271は>>268にレスしているよ。
0286デフォルトの名無しさんNGNG
A->B
ならば
!B->!A
0287デフォルトの名無しさんNGNG
>>285
>>267=>>271って保証はどこにもないわけだが。
0288デフォルトの名無しさんNGNG
>>287
その通りだが、それがどうかしたのか?
0289デフォルトの名無しさんNGNG
>>288
頭悪いな。>>283の質問の理由がわからないっていう事だよ。
それと>>285の反証の理由と証拠もな。
0290デフォルトの名無しさんNGNG
>>290
救えねーな ププ
0291デフォルトの名無しさんNGNG
>>290
「教えない」じゃなくて「反証できません」だろ。言葉は正しく使えよカス。
0292デフォルトの名無しさんNGNG
あ、悪い。>>290は池沼だった。以降放置の方向で。
0293デフォルトの名無しさんNGNG
>>291=292
なにテンパってんの?
いっぱいいっぱいで見てらんない。
0294デフォルトの名無しさんNGNG
>>288
>頭悪いな。>283の質問の理由がわからないっていう事だよ。

>>268に対して>271は否定的な意見を言っているだろ?
だから「なぜそう考えるのか」を>283では訊いているのだと俺は思った。

>それと>285の反証の理由と証拠もな。

>>271は>268の意見を否定しているように読める。
その理由を>283で聞くのはもっともだが、それに対して>284は
>君が勝手に脳内補完したんだから、
と言った。そこで俺は、>284は「>271が>268の意見を否定している」
という事実を見逃していると考えた。それで指摘したんだ。

つまり、>267は単なる議論のきっかけで、>268と>271の間で、
議論が行われていると俺は解釈した。
(>>が多すぎるといわれたので一部削った。)
0295デフォルトの名無しさんNGNG
>>271の議論は明らかに詭弁だろ。
これを対偶とか言う奴は論理の初歩を学んだ方がいい。
0296デフォルトの名無しさんNGNG
>>294
だから俺は>>267でも>>271でもないっつーに。なにカッカしてんだよ。(藁
本当の理由は>>267さんなり>>271さんに聞いてくれよ。他人の尻ぬぐいまで
押しつけられちゃたまらんよ正直。

それからさ、【いかにテスト要件がしっかりしていても】は>>271の発言に対しても
君の脳内補完だぜ。よくやり取りを見ろよ。>>283で初めて出てきている要件だ。
それに対する君の詭弁は言葉の綾というか、君の言葉遊びのように見える。

>>295
>>271がヘボだという理由を明確にしてから議論してくれないかね?一連の流れ
を見ていると、その点に関する考察がすっぽり抜けている。
0297デフォルトの名無しさんNGNG
おっと間違った。酒飲んでいるからな。
×>>271がヘボ
○>>267がヘボ

>>267がヘボという理由は多分、【いかにテスト要件がしっかりしていても】
を勝手に脳内補完して言っているだけだろう。>>267自体は別にヘボとも
思えない。
0298デフォルトの名無しさんNGNG
マーチンは、
ポインタや参照オブジェクトを内包したクラスなんかは
エイリアシングとかの問題が厄介で、外部仕様だけテストしても
だめな場合がある。だからリファクタリングするのは厄介、といってる。

ポインタを駆使していたら対象外とはいってない。

実行コードやオブジェクトのレイアウトに依存したコード、
たとえばvtblの位置や、ポインタ演算で強引にメンバやメンバ関数を特定してる
ようなコードは、継承関係が変わると動かなくなる可能性が高いんで、
リファクタリングするのは危険だ、といってるだけ。

その辺を注意してやる分には問題ないだろ。

そこまで読めないやつがヘ(ry
0299デフォルトの名無しさんNGNG
>>298
当たり前の事を偉そうに書くなヴォケ。
03001NGNG
>>298
それって「テスト要件をだすことが出来ない(困難である)」、ってだけなんじゃね?

「vtblの位置や、ポインタ演算で強引にメンバやメンバ関数を特定してるようなコード」
であっても、そのことがきちんとテスト要件にあげてあれば、
普通にリファクタリングの対象となりそうな気がする。

つまりvtblの位置が変わらないように注意しながらコードの書き直しを行うのであり、
同じメンバを呼び出せるようにポインタ演算を行うんだろ。



あるいは、vtblの位置とかがテスト要件になく、単に「xxxxのメンバにアクセスする」
とだけ記述してある場合、それはvtblの位置が変わったって、そのメンバにアクセスできさえすればいいし、
そのようにリファクタリングする。
0301デフォルトの名無しさんNGNG
だれか俺のチソコを外部インターフェースに格上げしてください。
0302デフォルトの名無しさんNGNG
>>301
protected なわけか、皮に
0303デフォルトの名無しさんNGNG
遺伝で息子も継承するわけね。皮。
0304デフォルトの名無しさんNGNG
やっつけ仕事で作ったような保守性の低いソースに苦しんでいます。
このような場合リファクタリングすればよいですか?
0305デフォルトの名無しさんNGNG
やっつけ仕事で一から作り直せ
テストは旧コードそのまんま。

新旧比較するテストコード書いて、UT&リファクタリング開始
03061NGNG
>>304
うpしる!

って、もうその仕事は終わってるか。
0307デフォルトの名無しさんNGNG
このスレは脂肪かい?
0308デフォルトの名無しさんNGNG
何かネタない?
0309デフォルトの名無しさんNGNG
#include<stdio.h>

int main(void){
 unsigned short i;
 double tmp[10];
 double diff;

 for(i=0;i<10;i++){
  scanf("%lf",tmp+i);
  if(i>0){
   diff=*(tmp+i)-*(tmp+i-1);
   printf("%lf",diff);
   if(diff>0){
    printf("+\n");
   }
   else if(diff<0){
    printf("-\n");
   }
   else {
    printf(" \n");
   }
  }
 }
 return(0);
}
0310105/02/09 07:24:21
#include <stdio.h>

static int sign( double d ) {
    return d < 0 ? -1 : 0 < d ? 1 : 0;
}

int main(void){
    static char sign_char[3] = { '-', ' ', '+' };
    unsigned short i;
    double current, prev, diff;

    scanf( "%lf", &prev );
    for( i = 0; i < 9; i++ ) {
        scanf( "%lf", ¤t );
        diff = current - prev;        printf( "%lf%c\n", diff, ar[ sign(diff) + 1 ] );
        prev = current;
    }
    return 0;
}
0311デフォルトの名無しさん05/02/09 07:34:35
static char sign( double d ) でいいんじゃないの。
0312デフォルトの名無しさん05/02/10 08:58:56
それでもいいけど、文字でなく数値であるものを敢えて文字型にするのはなんで?
0313デフォルトの名無しさん05/02/11 06:43:11
>>312
return d < 0 ? ' ' : 0 < d ? '+' : ' ';
03141/31205/02/11 09:38:11
>>313
そっか。そっちの方がいいかもね
0315デフォルトの名無しさん2005/08/08(月) 23:26:33
hosyu
0316デフォルトの名無しさん2005/08/08(月) 23:33:54
 scanf("%lf",tmp+0);
 for(i=1;i<10;i++){
  scanf("%lf",tmp+i);
  diff=*(tmp+i)-*(tmp+i-1);
  printf("%lf%c\n",diff,(diff>0)?'+':((diff<0)?'-':' '));
 }


>310
for()がダメぢゃね?
0317名無しさん@そうだ選挙に行こう2005/09/11(日) 09:40:04
新人のコードは重大な問題を引き起こすようなもの以外は、
少しぐらい汚くても多めにみてやれ。
相手のモチベーション下がっちまう。
0318デフォルトの名無しさん2005/09/18(日) 23:10:26
ループ回数が変わっても重大な問題ではないと?age
0319デフォルトの名無しさん2005/09/19(月) 09:49:56
>316
いまどき配列もポインタも吐くコードはかわらんから

>diff=*(tmp+i)-*(tmp+i-1);
diff = tmp[i] - tmp[i -1];
のほうがずっと読みやすい。
0320デフォルトの名無しさん2005/09/21(水) 01:40:12
printf("%lf%c\n",(tmp[i]-tmp[i-1]),(tmp[i]>tmp[i-1])?'+':((tmp[i]<tmp[i-1])?'-':' '));

diffいらね
0321デフォルトの名無しさん2005/09/23(金) 05:01:35
Public Function PrmChk(aaa as string) as Integer
 Dim bChkFlg as Boolean
 bChkFlg = False
 If文 Then
  bChkFlg = True
 End If
 If bChkFlg = False Then
  PrmChk = False
 Else
  PrmChk = True
 End If
 bChkFlg = False
 ......
以下ひたすらチェック
0322デフォルトの名無しさん2005/09/23(金) 05:05:00
Public Function PrmChk(aaa as string) as Integer
 PrmChk = False
 If文 Then
  PrmChk = True
 End If
 ......
0323デフォルトの名無しさん2005/09/23(金) 05:12:52
Integer に Boolean 入れてもおけ?
0324デフォルトの名無しさん2005/09/24(土) 15:20:48
>310
もれなら sign が sign_char[] を返すようにするがな
0325ねた2005/10/01(土) 20:37:36
int hantei(int n){
 int i;
 /* 横判定 */
 for (i = 0; i < 3; i++){
  if ( (array[i][0] == n) && (array[i][1] == n) && (array[i][2] == n) ){
   if (n ==1) printf("「○」の勝ちです\n");
   else printf("「×」の勝ちです\n");
   return 1;
  }
 }
 /* 縦判定 */
 for (i = 0; i < 3; i++){
  if ( (array[0][i] == n) && (array[1][i] == n) && (array[2][i] == n) ){
   if (n ==1) printf("「○」の勝ちです\n");
   else printf("「×」の勝ちです\n");
   return 1;
  }
 }
 /* 斜め判定 */
 if ( (array[0][0] == n) && (array[1][1] == n) && (array[2][2] == n) ){
  if (n ==1) printf("「○」の勝ちです\n");
  else printf("「×」の勝ちです\n");
  return 1;
 }
 if ( (array[0][2] == n) && (array[1][1] == n) && (array[2][0] == n) ){
  if (n ==1) printf("「○」の勝ちです\n");
  else printf("「×」の勝ちです\n");
  return 1;
 }
 return 0;
}
0326こんな感じ?2005/10/03(月) 01:56:32
int hantei_(int n){
 int i;
 /* 横判定 */
 for (i = 0; i < 3; i++){
  if ( (array[i][0] == n) && (array[i][1] == n) && (array[i][2] == n) )
   return 1;
 }
 /* 縦判定 */
 for (i = 0; i < 3; i++){
  if ( (array[0][i] == n) && (array[1][i] == n) && (array[2][i] == n) )
   return 1;
 }
 /* 斜め判定 */
 if ( (array[0][0] == n) && (array[1][1] == n) && (array[2][2] == n) )
  return 1;
 if ( (array[0][2] == n) && (array[1][1] == n) && (array[2][0] == n) )
  return 1;

 return 0;
}
int hantei(int n){
 if ( hantei_(n) ){
  if (n ==1) printf("「○」の勝ちです\n");
  else printf("「×」の勝ちです\n");
  return 1;
 }
 return 0;
}
0327クラス化してみた2005/10/03(月) 15:55:48
class Board {
enum { BOARD_SIZE = 3 };
enum { BLANK, MARU, BATSU };
int array[BOARD_SIZE][BOARD_SIZE];
...
public:
bool CheckRow(int nRow, int n) { // 横判定
assert( nRow >= 0 || nRow < BOARD_SIZE );
for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
if ( array[nRow][i] != n ) return false;
}
return true;
}
bool CheckCol(int nCol, int n) { // 縦判定
assert( nCol >= 0 || nCol < BOARD_SIZE );
for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
if ( array[i][nCol] != n ) return false;
}
return true;
}
// 斜め判定:bDirがtrueなら左上→右下 そうでなければ 右上→左下
bool CheckNaname(bool bDir, int n) {
for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
if ( bDir ) {
if ( array[i][i] != n ) return false;
}
else {
if ( array[i][BOARD_SIZE - 1 - i] != n ) return false;
}
}
return true;
}
0328クラス化してみた2005/10/03(月) 15:57:57
あー半角スペースだめだったかorz
0329クラス化してみた 1/22005/10/03(月) 15:59:21
class Board {
 enum { BOARD_SIZE = 3 };
 enum { BLANK, MARU, BATSU };
 int array[BOARD_SIZE][BOARD_SIZE];
 ...
public:
 bool CheckRow(int nRow, int n) { // 横判定
  assert( nRow >= 0 || nRow < BOARD_SIZE );
  for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
   if ( array[nRow][i] != n ) return false;
  }
  return true;
 }
 bool CheckCol(int nCol, int n) { // 縦判定
  assert( nCol >= 0 || nCol < BOARD_SIZE );
  for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
   if ( array[i][nCol] != n ) return false;
  }
  return true;
 }
 // 斜め判定:bDirがtrueなら左上→右下 そうでなければ 右上→左下
 bool CheckNaname(bool bDir, int n) {
  for ( int i=0 ; i<BOARD_SIZE ; i++ ) {
   if ( bDir ) {
    if ( array[i][i] != n ) return false;
   }
   else {
    if ( array[i][BOARD_SIZE - 1 - i] != n ) return false;
   }
  }
  return true;
 }
0330クラス化してみた 2/22005/10/03(月) 16:00:36
 // 全判定
 bool CheckWinAll( int n ) {
  int i;
  for (i = 0; i < BOARD_SIZE; i++){
   if ( CheckRow( i, n ) ) return true;
  }
  for (i = 0; i < BOARD_SIZE; i++){
   if ( CheckCol( i, n ) ) return true;
  }
  if ( CheckNaname( true, n ) ) return true;
  if ( CheckNaname( false, n ) ) return true;
  return false;
 }
 // 判定&表示
 bool Hantei( int n ) {
  assert(n == MARU || n == BATSU);
  if (CheckWinAll(n)) {
   if (n == MARU) {
    printf("「○」の勝ちです\n");
   }
   else {
    printf("「×」の勝ちです\n");
   }
   return true;
  }
  return false;
 }
};
0331デフォルトの名無しさん2005/10/03(月) 17:46:42
おれだったら置いた石の左右上下斜め4方向だけ調べるようにするな
3ます3ますのこの場合はおなじ8回検査ってことになるけど
0332クラス化してみた2005/10/03(月) 22:26:45
>>331
それもありやね。ま、計算量的に問題なければどっちでもいいと思う。

>>332
最後のHantei()関数は外部に書くほうが class Board が生きてくるな。
内部データクラスに出力まで混ぜて書くのは設計上まずげ。
0333デフォルトの名無しさん2005/10/04(火) 13:14:21
何マスでの何目並べでも大丈夫なようにしてあげたよ

int BOARD_SIZE = 3;
int STONES_FOR_WIN = 3;
bool check_move_for_win(int x, int y, int n)
{
 static int vectors[8][2] = {
  {1, 0}, {1, 1}, {0, 1}, {1, -1}, {-1, 0}, {-1, -1}, {0, -1}, {-1, 1}
 };

 for(int i = 0; i < 8; i++)
 {
  int curx = x;
  int cury = y;
  for(int j = 2; ; j++)
  {
   curx += vectors[i][0];
   cury += vectors[i][1];
   if(curx < 0 || cury < 0) break;
   if(curx >= BOARD_SIZE || cury >= BOARD_SIZE) break;
   if(array[curx][cury] != n) break;

   if(j >= STONES_FOR_WIN) return true; // win
  }
 }
 return false; // continue
}
0334デフォルトの名無しさん2005/10/04(火) 20:03:17
>>333
これのどこがリファクタリングなんだろうか・・・・・
0335デフォルトの名無しさん2005/10/05(水) 04:32:39
>リファクタリング 【refactoring】. プログラムの振る舞いを変えることなくソースコードを変更すること。

おもいくそ違っとるがな >333
精進せえよ
0336neta2005/10/08(土) 17:58:16
void Func(void)
{
 int i = 0;
 while ( 1 ) {
  if ( Judgement(i) > 0 ) {
   Execute( i );
   i++;
  }
  else {
   break;
  }
 }
}
0337クラス化してみた2005/10/08(土) 20:29:49
それをどうせえっちゅうねん
0338デフォルトの名無しさん2005/10/09(日) 07:27:31
for(i=0; Judgement(i) > 0; ++i) Execute( i );
0339デフォルトの名無しさん2005/10/18(火) 05:25:57
もうちょっと面白いネタ投下してくれ
0340デフォルトの名無しさん2005/10/19(水) 02:51:21
 printf("並び 1:昇順 2:降順\n");
 scanf("%d", &k);
 start = clock();
 if(k==1){
  for(i=0; i<n-1; i++){
   for(j=i+1; j<n; j++){
    if(z[i]>z[j]){ temp = z[j]; z[j] = z[i]; z[i] = temp; }
   }
  }
  for(i=0; i<n; i++){ printf("%d\n", z[i]); }
 }
 else if(k==2){
  for(i=0; i<n-1; i++){
   for(j=i+1; j<n; j++){
    if(z[i]<z[j]){ temp = z[j]; z[j] = z[i]; z[i] = temp; }
   }
  }
  for(i=0; i<n; i++){ printf("%d\n", z[i]); }
 }
 finish = clock();
 printf("処理時間→%lf\n", finish - start);
0341デフォルトの名無しさん2005/10/19(水) 18:02:08
sort使えで終わるじゃんか・・・
0342デフォルトの名無しさん2005/11/03(木) 14:03:26
サンプルコード
(1987年度「最悪なスタイル賞」受賞作品 by Spencer Hines)
#include <stdio.h>
#include <malloc.h>
main(togo,toog)
int togo;
char *toog[];
{char *ogto, tgoo[80];FILE *ogot; int oogt=0, ootg, otog=79,
ottg=1;if ( togo== ottg) goto gogo; goto goog; ggot:
if ( fgets( tgoo, otog, ogot)) goto gtgo; goto gott;
gtot: exit(); ogtg: ++oogt; goto ogoo; togg: if ( ootg > 0)
goto oggt; goto ggot; ogog: if ( !ogot) goto gogo;
goto ggto; gtto: printf( "%d goto \'s\n", oogt); goto
gtot; oggt: if ( !memcmp( ogto, "goto", 4)) goto otgg;
goto gooo; gogo: exit( ottg); tggo: ootg= strlen(tgoo);
goto tgog; oogo: --ootg; goto togg; gooo: ++ogto; goto
oogo; gott: fclose( ogot); goto gtto; otgg: ogto= ogto +3;
goto ogtg; tgog: ootg-=4;goto togg; gtgo: ogto= tgoo;
goto tggo; ogoo: ootg-=3;goto gooo; goog: ogot= fopen(
toog[ ottg], "r"); goto ogog; ggto: ogto= tgoo; goto
ggot;}
0343デフォルトの名無しさん2005/11/09(水) 02:10:28
obfuscatorかけたような感じだな
0344デフォルトの名無しさん2005/11/12(土) 19:03:05
上司SEにスケジュールの遅れで怒られるのが嫌なのでとりあえず単体テストおkにしておいて
あとでこっそり修正するのもリファクタリングか?
0345デフォルトの名無しさん2005/11/14(月) 03:01:13
振る舞いが変わっちゃうのはリファクタリングとは言わない
デバッキングもしくはリストラクチャリング
0346デフォルトの名無しさん2005/12/21(水) 16:40:16
VS2005でVC++だけがリファクタの機能をハブられた件について
0347デフォルトの名無しさん2005/12/21(水) 20:06:54
>>345 そんな言葉遊びされても現場は困ります。現実を見つめるように。
0348デフォルトの名無しさん2006/01/07(土) 12:35:27
int main(int argc, char* argv[])
{
int a=10,b=7;
printf("割ってかける演算子、かけて割る演算子\n");

// 3で割ってから3でかける演算子
a/*=3;
  
// 5でかけてから5で割る演算子
b*/=9;

printf("a=%d b=%d\n",a,b);
getchar();
return 0;
}
0349デフォルトの名無しさん2006/01/08(日) 12:59:29
コメント文にしか見えませんけど・・・
0350デフォルトの名無しさん2006/02/13(月) 23:38:28
利ファクタリングしてる?
0351デフォルトの名無しさん2006/02/14(火) 00:59:07
コントにしか見えませんけど・・・
0352デフォルトの名無しさん2006/02/14(火) 15:53:56
もうややこしいこと言わんと全部作り直せや
0353デフォルトの名無しさん2006/02/14(火) 19:13:15
#include <stdio.h>
int main(int, char *[])
{
int a=10, b=7;
printf("割ってかける演算子、かけて割る演算子\n");
// 3で割ってから3でかける演算子
a /= 3; a *= 3;
// 5でかけてから5で割る演算子
b *= 5; b /= 5;

printf("a=%d b=%d\n", a, b);
getchar();
return 0;
}

振る舞いは変わってないはずだが元のコードに意味がなさ過ぎるので
リファクタリングしようが何しようがやっぱり意味が無い。
大体コメントは5なのにコードは9ってどっちなんだよ。
いや中間全部コメントだけどさ…
0354デフォルトの名無しさん2006/02/14(火) 22:58:47
>>353
クマー
0355デフォルトの名無しさん2006/02/23(木) 02:02:32
アフォなコメントは悪
除去汁!
0356デフォルトの名無しさん2006/06/21(水) 21:43:46
ネタ投下

http://up.spawn.jp/file/up25688.txt
0357デフォルトの名無しさん2006/06/21(水) 22:10:45
>>356
仕様が無けりゃリファクタリングなんてできないよ。
0358デフォルトの名無しさん2006/06/22(木) 00:24:42
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2117.txt
0359デフォルトの名無しさん2006/06/22(木) 00:25:50
Classとか使うのも可。<358
0360デフォルトの名無しさん2006/06/22(木) 00:29:25
某宿題スレの奴で、コンストラクタとか使ってくれという依頼。とりあえずクラス使うようにしたのがこれ。
配列は使ってない。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2119.txt
0361デフォルトの名無しさん2006/06/22(木) 00:31:21
さあどうだ?ウズウズするだろう?
暇だったら>>358をリファクタリングしてくれ。
0362デフォルトの名無しさん2006/06/22(木) 10:08:05
>>358
とりあえず配列と関数を使うようにしてみた。
( 暫定 )
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2142.cpp
03633562006/06/22(木) 19:48:32
仕様は書くほどのものではないのですが、
何の変哲も無いB木です。
データの追加と削除のみができます。
0364デフォルトの名無しさん2006/06/22(木) 20:18:43
俺の人生をリファクタリング
0365デフォルトの名無しさん2006/06/22(木) 22:10:28
>>364
仕様は?
0366デフォルトの名無しさん2006/06/22(木) 23:29:06
>>363
何かしらの問い合わせを持たないと、どんな実装でもテスト不能なわけだが。
0367デフォルトの名無しさん2006/06/22(木) 23:53:15
B-Treeなんだし、提示されたコードが正しく動いているという前提ならリファクタリングは出来る。
ただ面白みがないので、俺はやらんが。
0368デフォルトの名無しさん2006/06/25(日) 20:37:58
>358
とりあえずmain()だけ
{
//◆タイトル
title();

//◆ゲームシステム
int credit;//出力整数:所持メダル数
int game=0;//出力整数:総ゲーム回数

srand( (unsigned)time( NULL ) );
for(credit = 5; credit > 0;){// ↓ ↓ ↓ ↓ ↓ ここからループ ↓ ↓ ↓ ↓ ↓
int bet;//入力整数:賭けメダル数
if((bet = setBet(credit)) == 0) continue;
if(bet<0 && endCheck()) break;
credit -= bet;

//メダル投入完了・ゲーム開始
++game;
dispSlot(bet);
reelStop(bet);
credit += payCheck(bet);
//ゲーム終了
}// ↑ ↑ ↑ ↑ ↑ ループここまで ↑ ↑ ↑ ↑ ↑

//メダル切れもしくは任意の終了
endTitle(credit, game);
}
0369デフォルトの名無しさん2006/07/27(木) 09:26:32
hos
0370デフォルトの名無しさん2006/10/31(火) 12:06:38
ファウラーの「リファクタリング」を拾い読み
してふと思ったこと。「クラスの抽出」で多量のメソッド
とデータがある場合、とありますが、(定)量的な目安なんか
は議論されているのだろうか。
0371デフォルトの名無しさん2006/11/01(水) 01:52:31
>>370
↓が適用できるんじゃないかな?
http://www.google.co.jp/search?q=%E3%83%9E%E3%82%B8%E3%83%83%E3%82%AF%E3%83%8A%E3%83%B3%E3%83%90%E3%83%BC+7
0372デフォルトの名無しさん2006/11/01(水) 07:56:37
>>371
ナールほどね。こういう方面からのアプローチもあるね。
でもソフトウェアエンジニアリングプロパーでの議論
とかOO業界での論議とかは、ちょっと見当たらない。
知ってる人がいたら教えて。なんかベックの未邦訳
の論文でちらっと読んだ気がするんだけど。。。
記憶違いかも。
0373デフォルトの名無しさん2006/11/18(土) 17:59:10
>>364
アウトプットは同じでいいの?
0374デフォルトの名無しさん2006/11/18(土) 18:00:46
なんか、PMDっていうソースコードをチェックするツールに
「複雑すぎる、どないかせぇ!」ってよく怒られます。
>>370
なんか関係ありかなぁ
0375デフォルトの名無しさん2007/04/12(木) 23:25:52
 
0376デフォルトの名無しさん2007/04/13(金) 00:33:09
リバーシスレより
マクロ使いまくり。

ttp://up2moe.moe.hm/img/q927.txt
■ このスレッドは過去ログ倉庫に格納されています