トップページ > プログラム > 2014年09月15日 > 9UWhhSIJ

書き込み順位&時間帯一覧

1 位/219 ID中時間01234567891011121314151617181920212223Total
書き込み数30004100000110042300040023



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
リファクタリングをただのコード修正と思ってる人へ
VBプログラマ質問スレ(Ver.6.0 まで) part64
Git 10

書き込みレス一覧

リファクタリングをただのコード修正と思ってる人へ
447 :デフォルトの名無しさん[sage]:2014/09/15(月) 00:37:25.87 ID:9UWhhSIJ
>>446
数学の定理じゃなくて、数学の証明だろ?

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

式の変形だよ。

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

一部の人が勘違いしているように、ぶっ壊して同じように作りなおすことじゃなくて、
項の移動のように、全く同じ結果になる変形をしているにすぎないんだよ。
リファクタリングをただのコード修正と思ってる人へ
448 :デフォルトの名無しさん[sage]:2014/09/15(月) 00:39:47.71 ID:9UWhhSIJ
>>446
あと警告として、自分が知らないことを
勉強している奴は生意気だっていうのやめたほうがいいよ。
中学生かよ。あいつ勉強なんかしてるんだぜーってw
リファクタリングをただのコード修正と思ってる人へ
450 :デフォルトの名無しさん[sage]:2014/09/15(月) 00:44:52.76 ID:9UWhhSIJ
いや、普通に恥ずかしいでしょ?

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

警告してあげないといつまでたっても
気づかないよ。
リファクタリングをただのコード修正と思ってる人へ
454 :デフォルトの名無しさん[sage]:2014/09/15(月) 04:21:21.27 ID: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
リファクタリングをただのコード修正と思ってる人へ
455 :デフォルトの名無しさん[sage]:2014/09/15(月) 04:22:40.33 ID:9UWhhSIJ
>>453が言ってる、
大胆なリファクタリングというのは、

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

それはリファクタリングじゃない。
リファクタリングをただのコード修正と思ってる人へ
456 :デフォルトの名無しさん[sage]:2014/09/15(月) 04:24:53.24 ID:9UWhhSIJ
>>452も少し勘違いしているね。

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

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

手法を使わない書き換えはリファクタリングじゃない。
VBプログラマ質問スレ(Ver.6.0 まで) part64
466 :デフォルトの名無しさん[sage]:2014/09/15(月) 04:58:28.77 ID:9UWhhSIJ
>>462
書き込み内容がわざとらしいんだよw
Git 10
643 :デフォルトの名無しさん[sage]:2014/09/15(月) 05:02:51.46 ID:9UWhhSIJ
>>640
複数の場所で共有していると壊れるだろうね。

AとBの両方で作業したら
新しい方のファイルで更新されるし。
リファクタリングをただのコード修正と思ってる人へ
460 :デフォルトの名無しさん[sage]:2014/09/15(月) 11:46:22.25 ID:9UWhhSIJ
>>459
そしたら「関数のインライン化」という
リファクタリングをすれば
動作を変えることなく、仕様を満たせるようになるよ。

やっぱり問題が起きた時にやるのは
リファクタリングだね(笑)
リファクタリングをただのコード修正と思ってる人へ
464 :デフォルトの名無しさん[sage]:2014/09/15(月) 12:46:23.34 ID:9UWhhSIJ
>>461
一回ぶっ壊したらだめだろw
それではリファクタリングになっていない。

リファクタリングは壊さずに直すことであり
壊さないで直すための手法がまとめられている。
http://d.hatena.ne.jp/asakichy/20100607/1275877997
リファクタリングをただのコード修正と思ってる人へ
467 :デフォルトの名無しさん[sage]:2014/09/15(月) 15:20:49.07 ID:9UWhhSIJ
>>465
> 少なくとも「関数の抽出」はリファクタリングの操作としてアトミックじゃない

アトミックだけど?

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

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


ほんと、やり方をしらんのね。しらんから壊れるって言ってる。
わかりやすい。
リファクタリングをただのコード修正と思ってる人へ
468 :デフォルトの名無しさん[sage]:2014/09/15(月) 15:21:50.80 ID:9UWhhSIJ
ちなみに、リファクタリングブラウザを使えばもっと簡単に行える。
もちろん、リファクタリング本にはそういうツールを使わないやり方も書いてある。
リファクタリングをただのコード修正と思ってる人へ
472 :デフォルトの名無しさん[sage]:2014/09/15(月) 15:55:47.97 ID:9UWhhSIJ
>>469
壊れてないよw
ばかなのかな?
人の話きかないよね。
リファクタリングをただのコード修正と思ってる人へ
473 :デフォルトの名無しさん[sage]:2014/09/15(月) 15:57:45.71 ID:9UWhhSIJ
>>470
> 手で書き直したとかじゃなくて、メソッドの抽出することで
> 仕様を満たさなくなるケースもあるって話だろう

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

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

あんたの言ってる「仕様」って関数呼び出し○ナノ秒以内で
あることっていう要件の話だよね?w
それは仕様ではない。
リファクタリングをただのコード修正と思ってる人へ
474 :デフォルトの名無しさん[sage]:2014/09/15(月) 16:00:52.19 ID:9UWhhSIJ
>>471
それは過剰な設計になってるよ。

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

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

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

最初から過剰な拡張性をもたせるのはよくない。
リファクタリングをただのコード修正と思ってる人へ
475 :デフォルトの名無しさん[sage]:2014/09/15(月) 16:31:02.56 ID:9UWhhSIJ
今更ながら>>1が言っていたことって正しいんだなって思った。

ソースコードを綺麗に作りなおすのがリファクタリングだって
思っている奴が多いこと多いこと。
リファクタリングをただのコード修正と思ってる人へ
479 :デフォルトの名無しさん[sage]:2014/09/15(月) 17:17:53.19 ID:9UWhhSIJ
ID:kUSteVkT必死すぎだなw

”要件” を満たせないなら、
同じ仕様のまま 要件を満たすように
リファクタリングすればいいだろうw
リファクタリングをただのコード修正と思ってる人へ
480 :デフォルトの名無しさん[sage]:2014/09/15(月) 17:32:28.60 ID:9UWhhSIJ
ID:kUSteVkTアは書いたコードが要件を満たせなかったら
そのコードを捨てて一から作り直んだろうかw
リファクタリングをただのコード修正と思ってる人へ
482 :デフォルトの名無しさん[sage]:2014/09/15(月) 17:38:23.74 ID:9UWhhSIJ
やっと要件といったねw

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

なんせリファクタリングしても仕様は変わらないのだから
仕様を変えずに要件を満たせるように作り変えられる。
リファクタリングをただのコード修正と思ってる人へ
489 :デフォルトの名無しさん[sage]:2014/09/15(月) 21:25:15.72 ID:9UWhhSIJ
>>483
> いや、俺は最後に修正をコミットするときに仕様を満たしてれば
> 途中で壊れてようがリファクタリングとしてOKって立場だから、それで良いよ

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

> リファクタリングはより具体的な技術のことで、 小さな「振る舞いを保持したままの変化」
> (リファクタリングと呼ばれている)から成り立っている。 システムをリファクタリングするときは、
> 数分以上、システムが壊れたままにしてはいけない。
リファクタリングをただのコード修正と思ってる人へ
491 :デフォルトの名無しさん[sage]:2014/09/15(月) 21:36:40.31 ID:9UWhhSIJ
>>490
趣味とは、汚くても動けばいい。と
客の前で言えないことを、こっそりやること。
VBプログラマ質問スレ(Ver.6.0 まで) part64
469 :デフォルトの名無しさん[sage]:2014/09/15(月) 21:39:57.84 ID:9UWhhSIJ
なら別にあったっていいだろw
VBプログラマ質問スレ(Ver.6.0 まで) part64
472 :デフォルトの名無しさん[sage]:2014/09/15(月) 21:59:42.20 ID:9UWhhSIJ
酷い理由は言わないけど?


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。