リファクタリングをただのコード修正と思ってる人へ

■ このスレッドは過去ログ倉庫に格納されています
2010/05/29(土) 17:25:56
テストも書かないでリファクタリングとかうけるw

まずな、リファクタリングでは機能追加・修正は行わない。
動作はまったく同じでコードをきれいに書き換えること。

書き換えるといっても、これなら同じ動きだろ?って推測でやってはいけない。

まずテストを書く。ユニットテストをできるように、
単一のクラスでインスタンスを作る。

汚いコードなのだからたいていは依存関係のせいで単一ではクラスが生成できない
それを生成するために、クラスの動作を書き換える。
といっても元のコードは修正しない。継承やプリプロセッサを使って
依存関係を断ち切るために既存のコードを上書きする。
どうしてもそれが不可能な場合には、決められた手順で最小のコード修正を行う

そうやって既存のクラスのユニットテストを行う。
それでやっとリファクタリングが行える。
既存のクラスのユニットテストを通るように新たなコードに修正、
もしくは新規作成して置き換える。

この手順と考え方を守ってないのはリファクタリングではない。

で?
433デフォルトの名無しさん
垢版 |
2014/09/14(日) 02:43:07.06ID:XHTMIvTT
客の要件はそのままプログラムにできるけど、
それじゃあ最適化できてないから
外面の挙動は変わらない範囲で最適化を行う。
コードの実体だけがリファクタリングの対象じゃないだろ。
2014/09/14(日) 03:54:19.00ID:a/rqPd2y
>>433
それこそがリファクタリングの誤用で
リファクタリングではないと述べられていること。
2014/09/14(日) 10:24:07.39ID:NZ+I8Nx6
最適化じゃないんだよ
最適化なんかできるわけねーだろってのが大前提なんだよ
436デフォルトの名無しさん
垢版 |
2014/09/14(日) 13:02:21.11ID:bjSSfYoR
バグも含めて機能そのままで、構造だけ変える(良くするつもり)ができるっていうのが結構単純な
還元主義的な思い込みで、実際の構造物は両者は一体というか、都合良くできないと思うんだよね。

テスト駆動とかもそうだけど、この種のスローガンが胡散臭いのは、物作りの本質的な困難を直視
しないで、小手先の技法を当てはめれば解決みたいに喧伝しすぎるところにあるんじゃないかと思う。
2014/09/14(日) 14:21:12.62ID:TJC+Xrrg
別に胡散臭いとは思わないが、真に受けちゃったバカが「リファクタリング最強!」とか言い出すのはかなりうざい。
2014/09/14(日) 15:42:46.67ID:a/rqPd2y
>>436
> バグも含めて機能そのままで、構造だけ変える(良くするつもり)ができるっていうのが結構単純な
> 還元主義的な思い込みで、

できるよ。

というか、リファクタリングは構造を良くしましょう(終わり)じゃなくて、
構造を良くするのは当然の話しとして、機能をそのままにするためにはどうすればいいか?
って所が出発点で、

機能をそのままにするために、編み出された様々なテクニックが
リファクタリング手法なんだよ。

できないというのなら、リファクタリング手法(それには名前が付いている)
一つ一つに対して出来ない根拠を述べてみてよ。

君は単に、リファクタリングに手法があることを知らないで、
闇雲に自己流でなおそうとしてみて失敗しただけでしょう?
2014/09/14(日) 15:44:54.17ID:a/rqPd2y
なんだ、自分で自白してるじゃんかw

> この種のスローガン

スローガンとしか認識していないw

リファクタリングは、数学的な証明と
なんらかわらないんだが。
2014/09/14(日) 18:12:37.41ID:d9eejC+C
ダメなコードは直すことでよくできる
という公理が大前提
1000行もあるようなおバカ関数を数学的に定式化して改善するのは無意味なこと
見れば何をすべきかわかる
2014/09/14(日) 18:52:51.74ID:a/rqPd2y
>>440
つまりどういうこと?
リファクタリングすればいいって話を
言葉を変えていってるだけだよね?
2014/09/14(日) 19:25:36.36ID:3Rt2m2d6
リファクタリングを知らない人は、
リファクタリングを一気に直してしまおうと
思っているに違いない。

リファクタリングが問題が起きることがありえない
小さな修正の繰り返しであることをしらない。
2014/09/14(日) 19:30:47.61ID:NZ+I8Nx6
デザパタ信者みたいなのが暴走して悪評を広めてるんだろう
2014/09/14(日) 19:32:04.00ID:3Rt2m2d6
その悪評を鵜呑みにしているのが
頭悪いと言われる所以なわけで。

自分の頭で考えろよとw
2014/09/14(日) 21:08:34.07ID:oiv3svus
リファクタリング
446デフォルトの名無しさん
垢版 |
2014/09/15(月) 00:27:34.64ID:irRiVyM3
流石に数学の定理と同等か言い過ぎだろ。
パターンと同じでさ、セオリーやメソッドじゃない、ちょっとしたコツの集積だろ

オブジェクト指向、CMMI、PMBOKとかと同じでさ、アメリカ人の教授とかはそういうのまとめて
自分が言い出しっぺになって、学会ごっこしたり、資格試験の元締めやろうとしたりするのが好きなんだよ。

そういう商売に乗せられているだけなのに、さも学術的な根拠があるものとして「勉強」したりするのが
偉いと思っている奴はどっかオツムが弱いとしか言いようがないw
2014/09/15(月) 00:37:25.87ID:9UWhhSIJ
>>446
数学の定理じゃなくて、数学の証明だろ?

a + b = c を b = c - a
に置き換えるようなもの。

式の変形だよ。

リファクタリングのテクニックっていうのはどれも
この式の変形と同じようなもの。

一部の人が勘違いしているように、ぶっ壊して同じように作りなおすことじゃなくて、
項の移動のように、全く同じ結果になる変形をしているにすぎないんだよ。
2014/09/15(月) 00:39:47.71ID:9UWhhSIJ
>>446
あと警告として、自分が知らないことを
勉強している奴は生意気だっていうのやめたほうがいいよ。
中学生かよ。あいつ勉強なんかしてるんだぜーってw
449デフォルトの名無しさん
垢版 |
2014/09/15(月) 00:43:11.40ID:irRiVyM3
何が「警告」だよ
笑わせるな
2014/09/15(月) 00:44:52.76ID:9UWhhSIJ
いや、普通に恥ずかしいでしょ?

ガリ勉ガリ勉いって勉強しない悪ガキ。
自分が後で困るというのに。

警告してあげないといつまでたっても
気づかないよ。
451デフォルトの名無しさん
垢版 |
2014/09/15(月) 01:15:03.90ID:WaQuX0Y8
ぶっ壊して同じ結果が得られるように作り直すこととの違いを教えてください。
2014/09/15(月) 01:41:27.21ID:j8xvklWY
イチから作り直したい病と
現実の範囲で出来る事だけやる工夫の違い
453デフォルトの名無しさん
垢版 |
2014/09/15(月) 02:07:53.50ID:WaQuX0Y8
機能やクラスを抽出するのだって破壊を伴うんじゃないの。
リスクが少ない範囲での変更もあれば、
時には大胆なリファクタリングもあると思うけど。
2014/09/15(月) 04:21:21.27ID:9UWhhSIJ
>>451
> ぶっ壊して同じ結果が得られるように作り直すこととの違いを教えてください。
たとえば数学で、3x - 11 = 4 のxを求めるという問題があった時

1. 移項とい手法を使って、3x = 4 + 11 にして、
2. 足し算という手法を使って、3x = 15 にして
3. 両辺を同じ数で割るという手法を使って、x = 5
という風に、変形をしても等しいと証明されている
安全な手法を使ってシンプルな形に変形していくのがリファクタリング


>>453
大胆なリファクタリングって何よ?

まずさ、数学の式の変形のやり方と一緒で、
リファクタリング手法には名前があるって知ってる?

一覧見つけてきたから、これのどれが大胆で破壊を伴うのかちゃんと説明してくれ。
http://d.hatena.ne.jp/asakichy/20100607/1275877997
2014/09/15(月) 04:22:40.33ID:9UWhhSIJ
>>453が言ってる、
大胆なリファクタリングというのは、

これらの手法を使わずに
いきなり最終的な答えを
だそうとしていることでしょ?

それはリファクタリングじゃない。
2014/09/15(月) 04:24:53.24ID:9UWhhSIJ
>>452も少し勘違いしているね。

リファクタリングを「ソースコードを綺麗にしましょう」ということを
英語で言ったものとしか認識していないようだ。

リファクタリングというのは、安全に変形できるという
手法を使って、いっぽずつ書き換えていくもの。

手法を使わない書き換えはリファクタリングじゃない。
2014/09/15(月) 10:57:57.36ID:z+pQ6G77
>>456
それな
その手法の確立というか
その手法の念押しというか
そういう面も大きい
2014/09/15(月) 11:09:38.77ID:pNNQiIbO
これがリファクタ信者の暴走か
2014/09/15(月) 11:28:39.31ID:kUSteVkT
リファクタリングの「関数の抽出」をやったら
増えた関数呼び出し分の実行コストが無視出来なくて
仕様を満たさなくなってしまいました
2014/09/15(月) 11:46:22.25ID:9UWhhSIJ
>>459
そしたら「関数のインライン化」という
リファクタリングをすれば
動作を変えることなく、仕様を満たせるようになるよ。

やっぱり問題が起きた時にやるのは
リファクタリングだね(笑)
2014/09/15(月) 11:49:22.77ID:kUSteVkT
つまり途中で一回ぶっ壊して同じ結果が得られるように作り直すわけね
良いと思うよ
2014/09/15(月) 12:21:05.22ID:NXR59SQz
リファクタリングがゲシュタルト崩壊しそうなスレだ。
2014/09/15(月) 12:43:17.41ID:zrs0o34A
安全を過信しすぎだな
2014/09/15(月) 12:46:23.34ID:9UWhhSIJ
>>461
一回ぶっ壊したらだめだろw
それではリファクタリングになっていない。

リファクタリングは壊さずに直すことであり
壊さないで直すための手法がまとめられている。
http://d.hatena.ne.jp/asakichy/20100607/1275877997
2014/09/15(月) 13:45:51.89ID:kUSteVkT
>>464
>>459の操作で一回ぶっ壊れてるじゃん
少なくとも「関数の抽出」はリファクタリングの操作としてアトミックじゃない
2014/09/15(月) 15:20:24.10ID:4lL49qVx
慌てずリファクタリングの公式に沿って変更すれば副作用は一切ない。
2014/09/15(月) 15:20:49.07ID:9UWhhSIJ
>>465
> 少なくとも「関数の抽出」はリファクタリングの操作としてアトミックじゃない

アトミックだけど?

リファクタリング本を見ればしっかり書いてあるよ。
アトミックに作業する方法。

どうせあんたは関数を消して書きなおす(書き直してる間
元の関数がなくなってる状態)が起きるって思ってるんだろうけど。


ほんと、やり方をしらんのね。しらんから壊れるって言ってる。
わかりやすい。
2014/09/15(月) 15:21:50.80ID:9UWhhSIJ
ちなみに、リファクタリングブラウザを使えばもっと簡単に行える。
もちろん、リファクタリング本にはそういうツールを使わないやり方も書いてある。
2014/09/15(月) 15:45:17.66ID:wmpEGwKw
>>459>>460の間に一回壊れてるよね
2014/09/15(月) 15:51:22.11ID:wmpEGwKw
>>467
手で書き直したとかじゃなくて、メソッドの抽出することで
仕様を満たさなくなるケースもあるって話だろう

その直後にインライン化したとしても、一旦仕様を満たさない状態になったのは事実
2014/09/15(月) 15:53:23.99ID:KlWrYY91
まあ俺ぐらいリファクタリングに精通すると、最初からリファクタリング後の最終形になるように最初からコーディングできちゃうわけで、あえてリファクタリングを意識しなくていいわけなんだけどね。

中島敦の「名人伝」にでてくる「弓ってなに?」といった弓の名手のごとし。
2014/09/15(月) 15:55:47.97ID:9UWhhSIJ
>>469
壊れてないよw
ばかなのかな?
人の話きかないよね。
2014/09/15(月) 15:57:45.71ID:9UWhhSIJ
>>470
> 手で書き直したとかじゃなくて、メソッドの抽出することで
> 仕様を満たさなくなるケースもあるって話だろう

メソッドの抽出で仕様を満たさなくなることはありません。

> その直後にインライン化したとしても、一旦仕様を満たさない状態になったのは事実

あんたの言ってる「仕様」って関数呼び出し○ナノ秒以内で
あることっていう要件の話だよね?w
それは仕様ではない。
2014/09/15(月) 16:00:52.19ID:9UWhhSIJ
>>471
それは過剰な設計になってるよ。

コードの規模に応じて、適切な設計というのは異なる。

コードに修正が入る、それがバグの修正でない限り
機能化拡張だろう。

機能拡張にともなって規模が増るというような時にリファクタリングをするんだ。
機能追加とリファクタリングはわけてやるものだから、
機能追加前、もしくは機能追加後にリファクタリングね。

最初から過剰な拡張性をもたせるのはよくない。
2014/09/15(月) 16:31:02.56ID:9UWhhSIJ
今更ながら>>1が言っていたことって正しいんだなって思った。

ソースコードを綺麗に作りなおすのがリファクタリングだって
思っている奴が多いこと多いこと。
476デフォルトの名無しさん
垢版 |
2014/09/15(月) 16:59:56.60ID:WaQuX0Y8
ポリモーフィズム化するのは機能追加だアホ
2014/09/15(月) 17:07:57.72ID:kUSteVkT
>>473
> あんたの言ってる「仕様」って関数呼び出し○ナノ秒以内で
> あることっていう要件の話だよね?w
> それは仕様ではない。

ループの中で繰り返し呼び出されたら馬鹿にならん差になることもある
仕様かどうかはケースバイケースだアホ
2014/09/15(月) 17:15:35.47ID:kUSteVkT
リファクタリングの「関数のインライン化」をやったら
生成されるプログラムのバイナリサイズが許容範囲を超えて
仕様を満たさなくなってしまいました
2014/09/15(月) 17:17:53.19ID:9UWhhSIJ
ID:kUSteVkT必死すぎだなw

”要件” を満たせないなら、
同じ仕様のまま 要件を満たすように
リファクタリングすればいいだろうw
2014/09/15(月) 17:32:28.60ID:9UWhhSIJ
ID:kUSteVkTアは書いたコードが要件を満たせなかったら
そのコードを捨てて一から作り直んだろうかw
2014/09/15(月) 17:33:12.92ID:kUSteVkT
一日中スレに張り付いてる ID:9UWhhSIJ に必死過ぎと言われてもな…

で、リファクタリングの手法に則って変換しても
要件を満たせないケースがあると認めるのか?
2014/09/15(月) 17:38:23.74ID:9UWhhSIJ
やっと要件といったねw

リファクタリングは仕様を変えずに
コードをわかりやすい形に修正するものだから
要件を満たさなく慣れば、満たすように
リファクタリングすればいいってことで終わる話だ。

なんせリファクタリングしても仕様は変わらないのだから
仕様を変えずに要件を満たせるように作り変えられる。
2014/09/15(月) 17:44:05.42ID:kUSteVkT
>>482
いや、俺は最後に修正をコミットするときに仕様を満たしてれば
途中で壊れてようがリファクタリングとしてOKって立場だから、それで良いよ

でも、お前はリファクタリングの手法に則ってれば
絶対に壊れることは無いっていう立場だろ?(>>454-456)
2014/09/15(月) 18:58:56.46ID:j8xvklWY
絶対に壊れない奥義は秘中の秘で
師匠に皆伝を認められないと伝授してもらえないんだよ
2014/09/15(月) 19:33:35.36ID:wbbrJGCJ
リファクタリングってどのタイミングでやる事を想定してるのかな
プロジェクトにそんな工程存在しないし
終わって凍結したコードを後から修正なんてしないでしょ
不具合とか新機能とか更改する案件が出てきて初めて
次のプロジェクトやりましょうってなるわけでしょ
そうなったとしてコードの機能追加や修正はあっても
このスレで言う仕様通りに動くものにわざわざ手をつけるなんてことするかな
2014/09/15(月) 19:40:39.59ID:q3fGkS61
やりたい時がやるべき時なんだよ。
コードがクソだと思ったら何時でもそれがリファクタリングのタイミング。
2014/09/15(月) 19:58:17.80ID:wbbrJGCJ
だからそんなタイミングなんて実際存在しないよねって話をしてるのに
2014/09/15(月) 20:46:42.81ID:q3fGkS61
>>487
だからコードがクソだと思わなかったらやる必要ないんだって
2014/09/15(月) 21:25:15.72ID:9UWhhSIJ
>>483
> いや、俺は最後に修正をコミットするときに仕様を満たしてれば
> 途中で壊れてようがリファクタリングとしてOKって立場だから、それで良いよ

リファクタリングの誤用
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?RefactoringMalapropism
> ……のだが、リファクタリングは、適切に使われてはいない。
> リファクタリング中に2,3日システムが動かなくなっちゃってーなどと言ってる奴がいたら、
> んなもんリファクタリングじゃあなーいと言ってやれ。 ドキュメントをリファクタリング
> しちゃるとか言ってる奴、 それもリファクタリングじゃねーぞコラ。 そういうのは、リストラクチャリング(再構築)というのだッ。

> リファクタリングはより具体的な技術のことで、 小さな「振る舞いを保持したままの変化」
> (リファクタリングと呼ばれている)から成り立っている。 システムをリファクタリングするときは、
> 数分以上、システムが壊れたままにしてはいけない。
2014/09/15(月) 21:31:41.31ID:eEkAvSkz
>>486
>やりたい時がやるべき時なんだよ。

趣味だよなこういうのは
死ぬまでいじってろ
2014/09/15(月) 21:36:40.31ID:9UWhhSIJ
>>490
趣味とは、汚くても動けばいい。と
客の前で言えないことを、こっそりやること。
2014/09/15(月) 22:30:57.87ID:kUSteVkT
>>489
コミットするまでシステムはそのままなんだから(正確にはデプロイするまでだが)
完全にリファクタリングの定義に沿ってるよね
誤用してるのはお前だね
2014/09/15(月) 22:47:48.33ID:W2xZfE+V
IDEのリファクタリングのメニューから選べる機械的にできる変換のみを
リファクタリングとする派閥があるんだよ
要件を満たすかではなく、機械的にできる事が重要なわけ

なお、これは底辺の馬鹿でも可能な「ドカタ・スタイル」として認知されてる
2014/09/15(月) 23:33:30.39ID:jSabMZv+
>>492
これはひどい
バカというより迷惑
495デフォルトの名無しさん
垢版 |
2014/09/16(火) 02:50:25.03ID:BRRsQsEe
>>446
>オブジェクト指向、CMMI、PMBOKとかと同じでさ、アメリカ人の教授とかはそういうのまとめて
>自分が言い出しっぺになって、学会ごっこしたり、資格試験の元締めやろうとしたりするのが好きなんだよ。

リファクタリングって、資格試験制度や学会作ろうって動きがあるのかな?
パターンはなんかやってるところあるよね。
2014/09/16(火) 04:23:48.75ID:1lKEIB+1
>>493
> IDEのリファクタリングのメニューから選べる機械的にできる変換のみを
> リファクタリングとする派閥があるんだよ

それは、リファクタリングをわかってない派閥であり、
無知なリファクタリング反対派となんらかわらないよ。

リファクタリング本を読んでいれば、
リファクタリングブラウザで行えるのは
リファクタリングのほんの一部だって知ってる。
2014/09/16(火) 12:38:21.05ID:5ipzkeYr
リファクタラー内部抗争勃発
2014/09/16(火) 13:41:58.56ID:UosJEOFn
リファクタリング前と後で同じテストが通ればOK派と、
リファクタリング中のどの時点でもテストが通らないとダメ派か。
499デフォルトの名無しさん
垢版 |
2014/09/16(火) 19:13:39.64ID:BRRsQsEe
リファクタリングのアトミックな単位は一文字削除
2014/09/16(火) 20:19:15.75ID:c0zqQ2NF
>>1
リファクタリング自体が理想論。

つまりは、自分(以下A)と同等かそれ以上の腕の持ち主だけで人材が構成されている必要がある。ただし、これは自分視点。
しかし、この状態だと、A以上の腕の持ち主からAを見ると、Aは足手まといで汚いソースを作り上げる元凶。
上級者が、切磋琢磨していく状態なら良いが、上級者なんて1%もいない。99%の下手が次々と入ってきてクズソースを乱発。
腕の良い者達は、クズソースのリファクタ作業だけをやるハメに。
腕の良い者達だけでやっていれば、もっと早く開発ができるのに。しかしリファクタリングというとできるのは腕の良いものだけ。
よってクズの尻拭いを永久にやらされる上級者は、腐る。
そしておしまい。

リファクタ云々よりクズの徹底排除こそ最優先。
それがなされなければ、確実にクズソースの生成のほうが圧倒的に早い。
2014/09/16(火) 20:29:13.06ID:c0zqQ2NF
3行で言うと

1%の有能な人間のリファクタリングの速度より
99%を占めるクズが作り出すクズソース量産スピードのほうが速い
だから、間に合わない。

ということだね。
2014/09/16(火) 21:19:30.50ID:LXIAs8Mg
隠された4行目は

そして、1%の有能な人間はここにはいない。

か?
2014/09/16(火) 21:22:31.12ID:1lKEIB+1
>>500
何が理想論なのかと思えば、
あんたの会社では無理って話なんだね。
2014/09/17(水) 00:27:57.13ID:5OnPRq9A
また俺の会社すげえ自慢か
ITドカタのクセに生意気だ
505デフォルトの名無しさん
垢版 |
2014/09/17(水) 01:33:42.78ID:ZHv/uS3X
なんで力量がはっきりしてない人のソースレビューもせずに、
終わってからリファクタリングしてるの。クズじゃないの。
自分のコード書くだけが仕事じゃねーんだぞ。
2014/09/17(水) 01:41:26.78ID:bT3aRSk/
リファクタリングが工程になのであればら、彼の知っている開発手法はそもそもTDDに向いてないので、その前提でTDDの話なんてできないと思うのです

世の中にはCIって概念があるのを知らないのだろうか

まぁ土方なら仕方ないと思いますが
2014/09/17(水) 01:43:13.03ID:bT3aRSk/
TDDすれと間違えたし、誤字りまくった
てへぺろ
2014/09/17(水) 02:10:48.96ID:B5vXdL5P
リバースエンジニアリングが難しいのと同じで、
自分でソースを書くよりも、
他人が書いたソースを読むのは、ずっと難しい

仕様書→ソースは、簡単
ソース→仕様書は、難しい
2014/09/17(水) 04:16:14.76ID:YtdMSBzp
>>504
> また俺の会社すげえ自慢か

俺の会社だせえ自慢じゃね?w
2014/09/17(水) 04:18:50.43ID:YtdMSBzp
>>508
> 他人が書いたソースを読むのは、ずっと難しい

最近これ違うと思うようになってきた。

他人が書いたソースが読みにくいと思ったら
そのソースは他人が読むように書かれていない
自分よがりなソースコードなんだよ。

読む方に非があるんじゃなくて、書くほうが悪い
2014/09/17(水) 07:16:49.41ID:5OnPRq9A
自分よがりなんて書いてる奴は、他人に読みやすい文章になるような注意力に欠けた
独りよがりの文章しか書けないんだろうな。
512デフォルトの名無しさん
垢版 |
2014/09/17(水) 12:15:48.80ID:Kfgv1MV9
>>511
うわあ読解力パネェ
2014/09/17(水) 21:24:55.43ID:YtdMSBzp
>>511
> 独りよがりの文章しか書けないんだろうな。
独りよがりって、自分よがりと同じ意味じゃね?
2014/09/17(水) 23:24:58.57ID:IUDVFBKE
君達は本当に頭が悪いんだな
2014/09/18(木) 00:20:18.22ID:spGOayPR
うむ

http://www.weblio.jp/content/%E8%87%AA%E5%88%86%E3%82%88%E3%81%8C%E3%82%8A

自分よがり
読み方:じぶんよがり
別表記:自分善がり

ひとりよがり(独り善がり)に同じ。周囲を顧慮せずに自分の都合や損得のみで物事を考えること。
2014/09/18(木) 19:33:06.94ID:ot8C9XJ5
>>500
まぁほぼ同意だな
2014/09/18(木) 20:26:58.62ID:spGOayPR
>>516
自作自演しなくていいよ。
そんなコメント普通しないからw
2014/09/18(木) 22:19:08.95ID:+GRlEEjB
要求仕様の変更に追随するために設計を変えていくのがリファクタだ

撒き散らしたクソコード直すのはリファクタとは言わん
テストの前に個々人レベルでやる仕事だ
2014/09/18(木) 22:31:11.52ID:Lc9LBSGA
他人が作ったものをメンテする時は
まず他人にやらせろってこと?
2014/09/18(木) 23:29:47.48ID:i6De8Pgm
クソコード直すのがリファクタリングでいいと思うお
2014/09/18(木) 23:52:12.25ID:CfthWkvp
結局言葉遊びの域を出なかったね
2014/09/18(木) 23:53:02.19ID:LNiMu1bm
つーかリファクタリングとか言いにくいから修正でいいじゃん
2014/09/19(金) 00:33:41.85ID:Y0Ellmpg
リファクタリングを定義しようぜ
とりあえずQA形式にして質問と回答は最近の書き込みから適当に埋めた

<<リファクタリングとは>>
Q 何時やるの? A やりたい時。糞コードを見つけたら。今でしょ
Q 具体的には(工程では)いつ? A 回答なし
Q やる必要あるの? A 回答なし
Q 誰がやるの?A 自称上級者
Q 上級者の定義は?A 回答なし
Q その上級者には何かメリットが?A 回答なし
Q リファクタリングってお金もらえるの?A ボランティア
Q どういう効果が期待できるの? A 将来的なリスクを回避する、または逆にリスクを抱える
2014/09/19(金) 17:39:57.70ID:J2pxYtIB
>>500に対して>>503の返しするということは、>>500の話が論が正しいことを>>503が認めているということ。

つまるところ、会社の構成員の実力によって不可能になるということ。
をあんたの会社では〜。の一文で認めている。

ゆえにその切り返しをするなら、リファクタリングは議論する価値がないということ
2014/09/19(金) 17:51:51.67ID:VKWv7B4z
ちょっと何言ってるのかわかりませんわ
2014/09/19(金) 18:08:18.14ID:J2pxYtIB
誰でもできることでないなら、実現は夢物語ということだ
2014/09/19(金) 18:36:04.63ID:iHgvKusj
工程を確保して
下がやりたいと言ったら邪魔するなというだけの話かもしれない
2014/09/19(金) 18:47:45.84ID:5Sq7tp9D
>>524
行き詰まるところ先人達が考えて考えた結果

 新言語の開発

にしか答えがないんだよなww
どんな素人でも言語のルールには逆らえない。つまり従わざるを得ない。
理論だけで劇的な変化があったのなんて

GOTOレス

だけだろ。

わかりやすくステップ数で言うけどjavaで10ステップで組まれていてごちゃごちゃなプログラムがある。
仕様変更するのに1万ステップの変更が必要。これを、新言語おまんこ女学院言語で開発すると、

main()
おまんちょ()

って書くだけで同じ機能が実現され、

仕様変更には

use ここか?ここがええんか?
main
おまんちょ(伝説の第49手目(3箇所、同時、左手だけちょうどいい微速))

って直せば実現できる言語が生まれれば、これ以上の可読性の向上はないわけで。
馬鹿でも簡単に、馬鹿でも可読性が高く、馬鹿でもスピーディーに・・・・を求めて新言語というのは生まれている
2014/09/19(金) 18:48:57.11ID:5Sq7tp9D
>javaで10ステップ

>javaで10万ステップ
に訂正
2014/09/19(金) 19:42:02.22ID:97jwqaFX
>>485
パッケージ製品のメジャーバージョンアップとか?
一般的なIT土方の工事現場にはまず縁ないわな
2014/09/19(金) 20:44:14.36ID:/lOvQPWO
リファクタリングしない人は
修正する時、テストしないの?

テストするならリファクタリングしても
問題ないよね。
2014/09/19(金) 20:59:36.15ID:6gllmAz9
全部埋めてやったぞ

<<リファクタリングとは>>
Q 何時やるの? A やりたい時。糞コードを見つけたら。今でしょ
Q 具体的には(工程では)いつ? A アジャイルですから。工程て何?
Q やる必要あるの? A やらなきゃバグでるよ?いつか破綻するよ?
Q 誰がやるの?A 自称上級者
Q 上級者の定義は?A 糞コードを発見する嗅覚を持つこと
Q その上級者には何かメリットが?A コードが綺麗な方が気持ちいいだろ
Q リファクタリングってお金もらえるの?A ボランティア
Q どういう効果が期待できるの? A 将来的なリスクを回避する、または逆にリスクを抱える
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況