X



リファクタリングすると全部テストしろと言ってくるやつの矛盾
レス数が1000を超えています。これ以上書き込みはできません。
0001仕様書無しさん
垢版 |
2018/04/15(日) 13:13:44.63
機能追加や変更した時に、全部テストしてるでしょ?
いつもやってることじゃん
0002仕様書無しさん
垢版 |
2018/04/15(日) 13:16:31.37
それなw

あと、リファクタリングするとお前責任取れるのかとか言ってくるが
機能修正でバグった時の責任はリファクタリングじゃないんだから
全部あんたがとれよって言うと顔真っ赤になるw
0005仕様書無しさん
垢版 |
2018/04/15(日) 13:53:39.75
簡潔にまとめられない奴はプログラミング向いてない
0006仕様書無しさん
垢版 |
2018/04/15(日) 14:07:43.60
そんなことない
なんでもかんでも一緒にするな
0007KAC
垢版 |
2018/04/15(日) 14:29:02.33
>>1
テスト粒度とかリスクとか理解できないの?
0008仕様書無しさん
垢版 |
2018/04/15(日) 14:43:15.84
リファクタリングはテスト必須で
論理的におかしくならないと判明している
決められたやり方でやるので
リスクは低いしテストは自動化されています。
その前提ぐらい知らないんですか?
0009仕様書無しさん
垢版 |
2018/04/15(日) 14:45:55.12
>>8
だからテストやらなくていいって?
そもそもクラスまで作り変えてるならテスト免除どころか設計書のレビューからだよね
0010仕様書無しさん
垢版 |
2018/04/15(日) 14:46:35.64
>>9
リファクタリングは「テストをやってる」ことが
前提なので、
あんたが言ってるのは別のものでは?
0011仕様書無しさん
垢版 |
2018/04/15(日) 14:47:26.22
> そもそもクラスまで作り変えてるならテスト免除どころか設計書のレビューからだよね

そうですね? なんでレビューせずに
リファクタリングするなんて思い込んでんの?
0012仕様書無しさん
垢版 |
2018/04/15(日) 15:05:33.14
> リファクタリングはテスト必須で

って書いてあるのに



9 返信:仕様書無しさん[sage] 投稿日:2018/04/15(日) 14:45:55.12
>>8
だからテストやらなくていいって?


これもう頭が悪いレベルだろw
0013仕様書無しさん
垢版 |
2018/04/15(日) 15:06:06.29
リファクタリングの存在を否定できないと
困る人がいるんですよw
0014仕様書無しさん
垢版 |
2018/04/15(日) 15:30:21.76
設計書から書き直すならただの改修作業なんだよね?
0015仕様書無しさん
垢版 |
2018/04/15(日) 15:32:49.90
>>14

改修作業の中身の違い

 1. 無計画に適当に修正して手動でテストしてそれでもバグでて苦労するのと
 2. リファクタリングの手法を使ってテストコード書いて低リスクで修正するかの違い
0017仕様書無しさん
垢版 |
2018/04/15(日) 19:48:05.09
>>15
TDDでリファクタリングした場合、
1、初歩的なミスにすぐ気付ける
2、作業者が精神的に安心できる

なお、開発者目線の開発体制の優先順位は
バージョン管理 > コードレビュー > 自動テスト > リファクタリング
なので、必ずリファクタリングとTDDはセットになる
0018仕様書無しさん
垢版 |
2018/04/15(日) 19:48:54.60
>>16
リファクタリングの手法では先に自動化されたテストコードを書く
もしくはすでに存在していなければならない
だから、リファクタリングしたらテストしろよっていうのは意味不明。

リファクタリングの中にテストすることが条件として含まれており
修正前と修正後の両方、それどころか修正のたびにテストすると言ってるのに
なんでそんな当たり前ことを、それも最後だけテストするような質問をするんだ?と
疑問になる

おそらく修正とテストが分離した考え方しか持って無くて
修正後に手動でテストを行うというやり方しか知らないのだろう
そんな再現性がなくてテスト回数もすくないんじゃ、
バグがなかなか取れずにデスマになるのは必死だろう
0020仕様書無しさん
垢版 |
2018/04/15(日) 21:17:10.48
なにをゆうちょるんじゃあ主は
0021仕様書無しさん
垢版 |
2018/04/15(日) 21:37:54.42
リファクタリング厨って受け売りでしか語らないから面白くない
0024仕様書無しさん
垢版 |
2018/04/16(月) 05:08:34.00
>>21
というか、責任あるポジションの経験がないやつが語ってるだけだからな
ちゃんと決定権を持つやつを納得させるだけの説明ができればいいだけだが、
それすらできていないっつーね
0026仕様書無しさん
垢版 |
2018/04/16(月) 12:37:10.95
>>19
そこらへんの話でいうと、
売上や品質が上がった客観的なデータが示せりゃ、どの会社でも自動テストやリファクタリングは採用されるんよ
そこまでしてないなら、その議論は語るに値しない
んで、殆どの会社はそこを検証していない
0027仕様書無しさん
垢版 |
2018/04/16(月) 12:45:59.35
>>26
そんなもん、やってみりゃ肌で感じ取れること
数値にしなきゃ理解できないよぉとかバカみたいなこと言ってると腕のいい職人にはなれませんよ??
0029仕様書無しさん
垢版 |
2018/04/16(月) 13:36:47.19
>>27
仕事を規定の時間内に許容できる品質のものを上げるのが実装者に求める要求で、それに付随する手段は手段でしかない。
で、手段は自由にやればいいし、基本介入しないし、結果しか見る気は無い。
だからやりたければやれば?としか自分は言わない
工数増えるのは論外
0030仕様書無しさん
垢版 |
2018/04/16(月) 14:37:58.22
>>26
> そこまでしてないなら、その議論は語るに値しない
> んで、殆どの会社はそこを検証していない

検証しろっていうのはわかるが、それは世間一般には
すでに検証されていてすでに品質が上がったというデータは出てるんだよな

それも検証するコストも出せないような会社がやるような中途半端な
方法じゃなくて、もっと大規模で信頼できる方法で検証した結果がすでにある。

で、それを参考にすりゃいいのに、参考にしないんだろう。
つまり他人を信用してない。だから他人がなにやってもどんなデータを出しても
そういう会社は信用しないんだろう。
0031仕様書無しさん
垢版 |
2018/04/16(月) 14:41:43.64
リファクタリングが有効かどうか?
検証してやるよ。コスト?そりゃ当然かかるよ

ここで嫌がる会社が多い

重要なのは、失敗するかもしれないがやってみよう
という考えが通じる会社かどうかなんだろうな
0032仕様書無しさん
垢版 |
2018/04/16(月) 14:52:53.46
体力がなくて単純工すらできないごみクズがIT技術者(笑)になる日本では
コストメリットどころかリスクしかない。
0033KAC
垢版 |
2018/04/16(月) 17:54:10.17
「リファクタリングしたら工数減ります」
「リファクタリングの為の工数ください」

うん。意味不明だね。
0034仕様書無しさん
垢版 |
2018/04/16(月) 18:19:38.72
> 「リファクタリングの為の工数ください」

誰もそんなこと言ってないけど?

>>31が言ってること勘違いした?
リファクタリングが有効かどうかの検証の話だよ。
検証するには、同じことをリファクタリグをするのと
しないので2回やらないといけない。
検証にはコストがかかる。
0036仕様書無しさん
垢版 |
2018/04/16(月) 19:33:16.67
>>34
いや、リファクタリングで総工数が減るなら勝手にやればいいだけじゃね?
リファクタリングで品質下がるなんて聞いた事無いわけだし。それとも単体テストレベルまでがっちり管理されてんの?
0037仕様書無しさん
垢版 |
2018/04/16(月) 19:50:39.52
リファクタリングで増減する工数って、内部設計クラスレベル〜クラステストまででしょ
詳細設計省かずやる巨大案件でも無い限り、実装者に委ねられる部分やん。
ともすれば、やりたきゃやれって回答にしかならん。
0038仕様書無しさん
垢版 |
2018/04/16(月) 20:03:20.01
>>36
> いや、リファクタリングで総工数が減るなら勝手にやればいいだけじゃね?

俺はやってるよ。リファクタリングで工数減るから
そもそも修正作業の中に自動的に組み込まれるものだから
あえて "リファクタリング単体で" 工数を取るなんてことはしない

だからリファクタリングのために工数くださいっていう発想が
そもそも間違ってるわけ。修正に伴う追加作業じゃない。
修正作業そのものなんだから
0039仕様書無しさん
垢版 |
2018/04/16(月) 20:08:32.88
仕組みが悪いからって正常に動いてる箇所まで手を入れるってねーな
0040仕様書無しさん
垢版 |
2018/04/16(月) 20:37:02.97
リファクタ自体は否定しないが、>>1は確実に技術に溺れて盲信してるアホだから許可出さない
0041仕様書無しさん
垢版 |
2018/04/16(月) 21:02:09.30
>>39
正常に動いていると証明するテストをしてないってこと?

正常に動いていることを証明するテストを修正後にもやれば、
正常に動くと証明できるでしょう?
0042仕様書無しさん
垢版 |
2018/04/16(月) 21:03:03.43
>>40
修正許可与えてるなら、どんな修正をしたとしても
許されるはずだけど?
0044仕様書無しさん
垢版 |
2018/04/16(月) 21:24:48.73
修正ってなんだよ、バグってんのか
機能追加だろうがなんでも修正って言う奴は素人でしょ
0045仕様書無しさん
垢版 |
2018/04/16(月) 21:26:39.53
ただのレッテル張りじゃねえかw
0046仕様書無しさん
垢版 |
2018/04/16(月) 21:27:14.47
素人というやつは童貞だ
イカ臭いプログラム書いてろ
と言ってるようなもの
0047仕様書無しさん
垢版 |
2018/04/16(月) 21:30:14.08
>>43
なんどもリファクタリングは修正の一部だって言ってるじゃん
一部ってことはそれ以外も有るってことだよ

複雑なコードを読み解いて、リファクタリングしないで複雑なまま修正するのと
複雑なコードを読み解いて、リファクタリングしてから修正するのと
どっちがリスクが少ないかって話だ

前者だと、複雑なコードを読み解いた人(修正担当者)がいるにもかかわらず
別の人が、また大変な思いをして読み解いてレビューしなければいけない
そして、次同じところを修正する時、また複雑なコード読み解かなければいけない
0049仕様書無しさん
垢版 |
2018/04/16(月) 21:33:31.81
リファクタリングは神の領域に達するものにのみ許される技。
素人はおとなしくExcel方眼紙でセル結合の練習でもしておけ。
0050仕様書無しさん
垢版 |
2018/04/16(月) 21:36:56.37
>>47
そんな入門書の1章に書いてあるような話はいいよ、面白くないから
0052仕様書無しさん
垢版 |
2018/04/16(月) 21:48:55.54
入門レベルの奴でも上から目線になれるから張り切ってんのか
0054仕様書無しさん
垢版 |
2018/04/16(月) 21:58:29.27
>>37
テストの品質が後工程に無関係ならな。
まあそんな現場が多いのは事実だが。
0055仕様書無しさん
垢版 |
2018/04/16(月) 22:14:39.29
>>51
リファクタリングするときのレビューとかどうしてる?
設計レビューもだし、コードレビューもだけど
0057KAC
垢版 |
2018/04/16(月) 22:42:11.58
>>47
お前さん、理想通りに開発が進めば
自動試験だけで完璧なものができるとか信じてる?
0058仕様書無しさん
垢版 |
2018/04/16(月) 23:48:14.82
テストしづらいとか、クラスが肥大化しすぎて開発に支障があるとかならまだしも
見通しが悪いなんて理由でうごいてるもんをほいほい変えていいもんじゃろか
0059仕様書無しさん
垢版 |
2018/04/17(火) 01:28:22.88
リファクタリングは超プロの領域
このスレには本当のリファクタリングが出来る奴はいない

elseなしに書き換えるのが精一杯のFラン説教野郎みたいなのがいるだけ
0060仕様書無しさん
垢版 |
2018/04/17(火) 01:37:33.43
大規模リファクタリングの秘孔をついた
お前のプロジェクトはもう死んでいる
0061仕様書無しさん
垢版 |
2018/04/17(火) 02:47:02.14
>>55
> リファクタリングするときのレビューとかどうしてる?
リファクタリングではないときはどうしてる?
それと同じなんだが。

まあそういう質問するってことはリファクタリングに限らず
そもそも設計もコードもレビューしてないってことなんだろうけど
まずはそこからやねw
0062仕様書無しさん
垢版 |
2018/04/17(火) 02:49:20.05
>>57
> 自動試験だけで完璧なものができるとか信じてる?

だからレビューするんでしょ?

自動試験はバグがないことを証明する手段
その手段が正しいかどうかはレビューでみる。

人手でレビューして、テストした内容も記録されて
後なにがあれば完璧なものができると思います?
0063仕様書無しさん
垢版 |
2018/04/17(火) 02:51:40.76
>>58
> テストしづらいとか、クラスが肥大化しすぎて開発に支障があるとかならまだしも
> 見通しが悪いなんて理由でうごいてるもんをほいほい変えていいもんじゃろか

機能追加とか修正するという前提なんだから、どちらにしろ変更するしかないでしょw
0064KAC
垢版 |
2018/04/17(火) 08:07:55.30
>>62
自動試験してレビュー通ったらシステムインしてサービス開始すんの?
0065仕様書無しさん
垢版 |
2018/04/17(火) 08:35:24.00
入門書第1章に書いてあることの受け売りなら長文で語るけど、具体的な話からは煽りで逃げるし、
体験から語ってると思えるような発言もないし、こいつ多分そんなにノウハウないよ
0066仕様書無しさん
垢版 |
2018/04/17(火) 10:12:11.71
>>64
レビューもするし自動以外のテストもする
そこは普通の機能変更のときとなにも変わらない

ただその時のやり方が、複雑なコードを頑張って解析して
無理やりパッチを当てるような、あとから見た時に
なんでこんな面倒なことしてんの?と思われるような変更をするやり方から、

次回は複雑なコードを読まなくて良いように、複雑なコードを
シンプルに修正しつつ、まるで0からコードを書いた時のように
こういう機能を実現するなら、普通こう書くよねという
当たり前の形にするやり方に変わるだけ

変更するたびに複雑になっていくやり方をやめて
変更しても複雑にならない、むしろシンプルになるような
やり方をしましょうってこと

その後にやるテストうんぬんは、もともと機能変更でやる予定だったんだろ?
なら最初からやるって決まってることじゃないか
0069仕様書無しさん
垢版 |
2018/04/17(火) 10:16:36.37
TDDってさ
組織的にガチガチにやるもんじゃなくて
設計者の間で守るべき密やかな秘密程度で
やったほうが良い気がすんのね。
0070仕様書無しさん
垢版 |
2018/04/17(火) 11:00:00.11
>>68
それはどんなコード変更のときでもやるべきことだから
リファクタリングの話とは関係ないという注意だけしておくね
0071仕様書無しさん
垢版 |
2018/04/17(火) 11:05:57.21
>>69
ようは、リファクタリング前に存在するテストコードが
リファクタリング後でも通ることで動きを変えてないことが
証明できれば良いのでTDDである必要はないよ。

具体的にはgit使えば歴史変えられるんで、
コード変更しつつテストコード書いて、
コード変更とテストコードでコミット分けて
あとでrebaseしてテストコードのコミットをコード変更の
コミットより前に持ってくれば良い
0074仕様書無しさん
垢版 |
2018/04/17(火) 12:26:04.15
>>72
> TDDは保護するためのテストじゃないから

TDDはテストではなく開発手法ですよ?

TDDという開発手法ではリファクタリングの前にテストを書き
書いたテストが、その後に行うリファクタリングが問題ないことを証明するんですよ

つまり
× TDD = 保護するためのテスト
○ TDD =「保護するためのテスト」を用いた開発手法

(あんたの言った「保護」がリファクタリングで壊さないように守るという意味である前提)

俺が>>71で言ったことは、TDDでやらなくてもテストで保護できると言ったんです。

https://postd.cc/test-driven-development/

> 簡単に言うと、TDDは機能を記述する前に自動テストを書く行為です。
> 例えば、Bobが素晴らしい新たなソーシャルネットワークのアイデアの
> ために新しい機能を開発する必要があるとしましょう。
>
> Bobは自動テストを書くことから始めますが、機能を正しく実装せずに、
> テストを失敗(赤色表示)させます。次に、Bobはテストを成功(緑色表示)
> させるための最小限のコードを記述します。緑色表示になったら、
> Bobはコードをきれいにし、テストを実行して機能が正しく
> 実装されたままであることを確認します(コードのリファクタリング)。
> 重複することなく、コードと自動テストは他の人も簡単に保守できます。
0075KAC
垢版 |
2018/04/17(火) 13:27:11.82
>>66
えーと、まずはスレタイの
「リファクタリングすると全部テスト」については、
「全部テストするのは当たり前」という理解でOK?

それなら、大筋では意見に違いは無い。
0076仕様書無しさん
垢版 |
2018/04/17(火) 13:49:22.47
>>75

before(リファクタリングしない場合)
 1. 機能追加やバグ修正などの変更依頼が来る
 2. 変更する
 3. 変更したので全部テストをする

after(リファクタリングする場合)
 1. 機能追加やバグ修正などの変更依頼が来る
 2. 変更する(リファクタリングもする)
 3. 変更したので全部テストをする


afterに対して、余計なことするな!
リファクタリングしたなら全部テストしろ!
と言われましても、beforeでも全部テストしてますよね?という話です。
0077仕様書無しさん
垢版 |
2018/04/17(火) 15:18:23.57
リファクタリングしたら(その時点で、機能改修する前に)(単体)テストしろって要求なんじゃね?

まあ普通やるけど。
0078仕様書無しさん
垢版 |
2018/04/17(火) 15:55:33.65
>>77
いやぁ、違うなぁ
リファクタリングさせないための方便として使ってるので
お前がリファクタリングするとテストする人が迷惑するんだぞ
だから余計なことするなという意味だろう。

だがもともとテストするわけで矛盾になるんだよな
0081仕様書無しさん
垢版 |
2018/04/17(火) 16:59:00.97
>>79
じゃあどういうことか書けよw

>>80
でもどっちみちコード変更するんでしょ?
リファクタリングしない方がデグレさせる可能性高いし
0082仕様書無しさん
垢版 |
2018/04/17(火) 17:34:58.09
リリースしたらあとはそのシステムのことは知らん
だからリファクタリングする気もない
0083仕様書無しさん
垢版 |
2018/04/17(火) 18:30:58.65
>>81
いやリファクタリングすると触らなくていいとこまで変更するじゃん
既存コードを変更するって時点でまずい
0084仕様書無しさん
垢版 |
2018/04/17(火) 18:52:07.21
>>83
触らなくていいかどうかが重要なんですか?

重要なのはテストする所かどうかでしょう?
触った所でテストするなら、なにも問題ないはずですが?
0085仕様書無しさん
垢版 |
2018/04/17(火) 18:54:58.04
>>84
そうはいかねぇだろ
文章化されてないけど
クリアしてるいろんな仕様があんだからよ
長い間運用してるとそういうのあるわけよ
0086仕様書無しさん
垢版 |
2018/04/17(火) 19:09:26.69
>>84
触らなければテストもしなくていい
プロは余計なコードも書かないし、余計なテストもしない
0087KAC
垢版 |
2018/04/17(火) 19:26:39.52
>>76
イメージはあってそう(スレ建てた奴とは違う意見)に読めたので、
具体的な内容を書いてみる。

大規模で難解なプロジェクトの一部機能で、
一カ所の編集バッファの数が足りず、
長い氏名の編集に失敗する仕様となっていた。
メモリの使用率なども調査済みで、編集文字数を増やすという仕様変更案件の場合。

バッファサイズを増やして関連箇所の試験して完了。

リファクタリングしたら、統べての試験をやり直し。

リファクタリングの有無でどちらが安いのか、
時と場合によるって認識はあってる?
0088仕様書無しさん
垢版 |
2018/04/17(火) 20:51:10.01
WFとアジャイルとでも違うし
リファクタリングできる設計になってるの?
も大きな要素だが

動いているなら弄るなよは永遠の真理
0090仕様書無しさん
垢版 |
2018/04/17(火) 22:21:50.39
バッファサイズの変更でなにをリファクタするというんだ

文字編集がややこしいから途中量の計算が難しいから処理変更とか?
0091仕様書無しさん
垢版 |
2018/04/17(火) 23:28:38.99
>>85

リファクタリングの話は一旦おいておきましょう。


> そうはいかねぇだろ
> 文章化されてないけど
> クリアしてるいろんな仕様があんだからよ

それでどうやってコードを正しく変更できるんですか?
コードを変更する時に文書化されてない仕様を
間違って変えてしまうことがありますよね?

文書化されてない仕様をテストでどうやって
見つけるんですか?
0092仕様書無しさん
垢版 |
2018/04/17(火) 23:36:25.31
>>87

> バッファサイズを増やして関連箇所の試験して完了。
>
> リファクタリングしたら、統べての試験をやり直し。

え?なんで?先に修正して試験するのがいけないんじゃん


1. リファクタリングをする
2. バッファサイズを増やす
3. 関連箇所の試験して完了

基本はこうですよ?
実際にはこんな大雑把作業じゃなくもう少し細かく
(ユニットテストと)リファクタリングと修正を何回か繰り返しますが

コードの変更とリファクタリングは切り離せません

コードの変更とリファクタリングの間に「関連箇所の試験して完了」
なんてものは入らないし入れたらダメです。
0093仕様書無しさん
垢版 |
2018/04/17(火) 23:41:10.11
ちゃんと設計できてないから改修する度にいちいち事前のリファクタリングが必要になるんだろうな
0094仕様書無しさん
垢版 |
2018/04/17(火) 23:41:50.05
>>91
まさにそのスレでその話してるんだからおいとくなよ…

現に存在するものに文句言ったってしょうがないだろ
あるんだから
非機能要件のないソフトなんてない

改修部分が少なければ少ないほど踏んじゃうリスクは減るだろう
0095仕様書無しさん
垢版 |
2018/04/17(火) 23:48:58.45
> ちゃんと設計できてないから改修する度にいちいち事前のリファクタリングが必要になるんだろうな

そりゃリファクタリングの必要がない場合にはリファクタリングしませんよw

前提として、リファクタリングの必要があるコードだって
ちゃんと書きましょうか? そうすればもっとわかりやすくなりますね。

・リファクタリングをしない場合
1. ちゃんとした設計になっていない
2. そのままで無理やりバッファサイズを増やす
3. やってることが意味不明。変更に自信が持てない。コードレビューも大変。
4. 変更で問題が出やすい。そのたびに意味不明なコードと格闘する。
5. 関連箇所の試験して完了。


・リファクタリングをする場合
1. ちゃんとした設計になっていない
2. 設計を修正する(リファクタリング)
3. ちゃんとした設計に自然な形でバッファサイズを増やす
4. やってることが明確。変更に自信が持てる。コードレビューも簡単。
5. 変更に問題が出にくい。仮に出たとしてもちゃんとした設計になってるのですぐに修正できる
6. 関連箇所の試験して完了。

リファクタリングしたことで1工程増えたように見えますが、
ちゃんとした設計になってないものを無理やり修正した複雑なコードは
バグが出やすく、修正も大変になって時間がかかります。
それはわかるでしょう?
0096仕様書無しさん
垢版 |
2018/04/17(火) 23:50:34.78
>>94
> 改修部分が少なければ少ないほど踏んじゃうリスクは減るだろう

改修部分をリファクタリングするんだから、
改修部分の量は同じですが?
0097仕様書無しさん
垢版 |
2018/04/17(火) 23:55:28.57
>>96
具体的なイメージがわからない

本当に改修部分だけ改修だったらリファクタ部分消えちゃうじゃない
それってただの改修では
0098仕様書無しさん
垢版 |
2018/04/18(水) 00:26:44.21
>>97
ちょっとなにかいいサンプルないか探したんだが
見つからなかったので、軽く例を書くわ


ある関数を改修部分することになった。これが100行を超える複雑なコード。
これをリファクタリングすると10行にできるとする
(ライブラリ使用の有無とかで、これぐらいざらにあるからw)

リファクタリングしない場合は無駄なコードで処理が入り組んでおり
入り組んだコードを時間をかけて頑張って解析し
そのまま修正するとなると数箇所を変更しなければいけなくなることが判明した
だが本当にその数箇所の変更で問題ないのか? コードが複雑なのでよくわからない
レビュー依頼した所で時間をかけて解析したものを他の人がすぐに分かるはずもない
多くの時間を費やすることになった。

リファクタリングして10行にまで減らすと、コードはシンプルになりなにやってるのか一目瞭然になった。
テストコードがあるのでリファクタリングの前後でコードが壊れてないことはわかる。
リファクタリングしたため修正箇所もたったの一行になった。
他の人も何の修正をしたのかすぐに分かる
0099仕様書無しさん
垢版 |
2018/04/18(水) 01:15:38.23
>>98
おまいのレスが長すぎてリファクタリングしないと読めない
0101仕様書無しさん
垢版 |
2018/04/18(水) 01:43:53.78
>>95
リファクタリングの必要性をそこまで感じないってことは、俺の設計ってちゃんとしてるんだろうなぁ
0102仕様書無しさん
垢版 |
2018/04/18(水) 02:00:52.61
>>101
あと仕様変更がないってことだろうね。

仕様変更があれば、少なからず設計を変更することになるから
0103仕様書無しさん
垢版 |
2018/04/18(水) 03:09:17.61
>>102
OCPができてないから仕様の変更がいろんなところに波及するんだよ
あとから直せばいいやじゃなくて、もう少し基本を身に付けよう
0104仕様書無しさん
垢版 |
2018/04/18(水) 03:41:28.10
>>103
最初から何でも考慮した過剰な設計は止めましょう
こっちが基本ですよ?w
0105仕様書無しさん
垢版 |
2018/04/18(水) 07:33:52.26
言語からスクリプト言語が呼べるようにしておけば汎用性は無限
バグも無限
0106仕様書無しさん
垢版 |
2018/04/18(水) 07:50:27.25
>>98
リファクタの状況的にはありだけど

それって関数全体に手が入ってるわけだから改修量同じじゃないじゃん
テストで検出できない非機能要件を踏んじゃうリスクは明らかに増えてるよね?
0107仕様書無しさん
垢版 |
2018/04/18(水) 10:52:23.05
数年経ってもリファクタバカは相変わらずだなw
未だに賛同者が現れないwwww
しかも、リファクタリングそのものではなく、リファクタバカに対する非賛同が増殖w

かたやリファクタすら許してもらえない信用と立場のリファクタバカが相変わらずの状態
かたや5年以上で完全に新規で作り直しの許可を与えられるようになった俺

技術書に溺れなくてよかった・・・。
0108KAC
垢版 |
2018/04/18(水) 12:55:46.41
>>98
あぁ、そういう事か。
「リファクタリング」という範囲のイメージが合ってなかったんだな。

関数単位のリファクタリングならそのイメージでだいたい合ってる。

「外部インタフェース変えずに内部の設計から見直す」事を前提に話してたよ。


それはそうとして、
関数の処理削減などで処理速度が変わったのなら、同期など含めてその観点での試験はちゃんとやれよ?
0110仕様書無しさん
垢版 |
2018/04/18(水) 19:52:23.21
関数レベルのリファクタリングしか語れないレベルだということはお察し
0112仕様書無しさん
垢版 |
2018/04/18(水) 22:40:51.02
>>106
> それって関数全体に手が入ってるわけだから改修量同じじゃないじゃん
> テストで検出できない非機能要件を踏んじゃうリスクは明らかに増えてるよね?

関数の中の1行を変えたとして、
その1行だけをテストして関数全体OKってできるんですか?

そもそも関数の中の1行だけをテストすることは不可能だと思います。

結局関数全体をテストするわけでしょう?
0113仕様書無しさん
垢版 |
2018/04/18(水) 22:42:05.86
>>108
> 関数の処理削減などで処理速度が変わったのなら、同期など含めてその観点での試験はちゃんとやれよ?

もともと修正すべき関数なんだから、リファクタリングしなくても
テスト必須でしょう? なにを言ってるんでしょうか
0114仕様書無しさん
垢版 |
2018/04/18(水) 22:50:36.63
>>112
でもさ
ソースで見たとき処理の下の方をちょっと修正すればいいところで
上の方の関係なさ気な箇所がバグったら言い訳できねぇよ
差分見て

何でここ弄ったの?今回の修正と関係ないじゃん

って言われたらちょっと嫌な空気流れるよ
0115仕様書無しさん
垢版 |
2018/04/18(水) 22:52:17.90
>>106
> それって関数全体に手が入ってるわけだから改修量同じじゃないじゃん
「可読性」って言葉ご存知ですか?

「可読性」の二番目の文字は「読」です。
「書」ではないのです。

改修は「書く」ことですが、改修前には「読む」こと必須です。
では書く時間と読む時間、どちらが多くかかりますか?

もちろん読む方ですよね?
タイピングなんて1分間に200〜300なんて軽く行く

改修の書く量だけを見ても正解にはたどり着けませんよ。
改修量ではなく作業始めてからの改修時間を見るのが筋じゃないですかね?

リファクタリングは改修時間を短くします。
0117仕様書無しさん
垢版 |
2018/04/18(水) 22:58:24.94
>>112
具体的なシナリオをいうとだ

日付をこりこり自前でデコードして値つくってる100行近いまぬけコードを
Javaのライブラリつかって数行にしてホルホルしてたら
ついうっかり見たことないようなフォーマットも受け入れちゃうようになってて
そんなん存在もわかんないからテストしてるわけなくて
でもユーザーは何の気なしに入れちゃうと入るからそのまま入れて、想定と異なるへんなデータが蓄積していって
集計バッチの演算とかにちょっとづつ毒虫のように影響を与え続けて
気が付いたらえらいことになってたりとか
0119KAC
垢版 |
2018/04/18(水) 23:03:03.55
>>113
修正内容に応じてテスト観点増やさないの?
費用対効果考えながらテスト計画立てないと破綻するぞ?
0120仕様書無しさん
垢版 |
2018/04/18(水) 23:04:52.45
>>117
それはリファクタリングしなくても起こる話ですね。

何度も言うように、そこが修正箇所です。
リファクタリングしなかったとしても修正する場所です。

修正して、ついうっかり見たことないようなフォーマットも受け入れちゃうようになってて
そんなん存在もわかんないからテストしてるわけなくて
でもユーザーは何の気なしに入れちゃうと入るからそのまま入れて、想定と異なるへんなデータが蓄積していって
リファクタリングと何の関係もない話ですよね

>>118
> 理解できたらもとに戻してもいいのよ?
次修正する時、また改修時間(読む時間)がかかりますよね?
0121仕様書無しさん
垢版 |
2018/04/18(水) 23:06:20.06
>>118
もとに戻すと改修時間(読む時間)が無駄になるだけですね。
次回修正するときも、また改修時間がかかります。

バグが見つかったら、また改修時間がかかります。
0122仕様書無しさん
垢版 |
2018/04/18(水) 23:07:43.72
>>119
> 修正内容に応じてテスト観点増やさないの?

少ししか修正してないから、テスト減らしていいとでも?

変更したコードの量は少しでも、その影響範囲は
修正の量とは無関係です。

どれくらい影響があるか、それはコードが複雑であれば
有るほど不明です。
0123KAC
垢版 |
2018/04/18(水) 23:17:24.91
>>122
テスト計画建てたこと無いの?
「全ての条件を網羅したらバグは無くなる」
は真だけど、それができないからみんな工夫してるんだよ。

バグのないものは存在しない

なんてのは、この業界の常識。
0124仕様書無しさん
垢版 |
2018/04/18(水) 23:22:51.13
>>120
リファクタだけの問題じゃないが、リファクタも修正のうち
修正する以上人間がやらかすリスクはある

だったら修正は極力限定されているほうがいいだろ


>次修正する時、また改修時間(読む時間)がかかりますよね?
そしてリファクタ最大の問題
コードの読みやすさや理解しやすさは人の主観に大きく依存する

else取っ払ってタプル戻り値の関数に変えようとするやつもいるんだぞ

リファクタ後に修正したほうがテスト工数が削減できるとか、規約が新たにできたから合わせるとか
なにかしら明白な理由がないと
0125仕様書無しさん
垢版 |
2018/04/18(水) 23:23:52.53
あとどうもやっぱりリファクタリングを
単なるコードの修正の意味で使ってるように見えるんだよねw

リファクタリングは、コードの修正、コードを綺麗にするを
英語にした言葉じゃないよ?

リファクタリングっていうのはやり方が決まってる。
スタート(修正前)とゴール(修正後)は自分で決めるけど
スタートからゴールへ至る道へは、決まったやり方を使って修正する
その決まったやり方っていうのは、動きを変えないための方法

数学の等式の変形みたいなもんだ
x - 2 = 8 を「移行」して
x = 8 + 2 に変形しても意味は変わらない

こういう「移行」みたいに変形しても意味が変わらないやり方に
ご丁寧に名前までつけてカタログ化されてる。

テスト書いて決められたやり方で式を変形するんだから
無計画なコードの修正なんかよりもずっと安全に変形できる
0126仕様書無しさん
垢版 |
2018/04/18(水) 23:24:38.02
>>123
いや、だから、一行の変更なら
テスト減らせるってわけじゃないよって言ってるんだが?
0127仕様書無しさん
垢版 |
2018/04/18(水) 23:25:40.46
>>124
> コードの読みやすさや理解しやすさは人の主観に大きく依存する

じゃあ主観に依存しないものを採用すればいいだけでは?

コードメトリクスを計測せよ
0128仕様書無しさん
垢版 |
2018/04/18(水) 23:27:30.62
>>125
そうだね
リスクはひくいよ
Eclipseのリファクタ機能使うならなおさらだ

それでもたまにやらかすだろ!
0130仕様書無しさん
垢版 |
2018/04/18(水) 23:33:22.64
>>128
> それでもたまにやらかすだろ!

複雑なコードをそのまま修正するほうが
やらかします。

その場合、いくら修正してもバグはなおらないし
直したそばから別のバグが発生するし、
時間もかかるしで、良いことはまったくありません。

重要なのは改修量ではなく改修時間な
0131仕様書無しさん
垢版 |
2018/04/18(水) 23:34:59.93
マーチン本に書いてある手続きいちいち守ってたら日が暮れる
現実的には既存のユニットテストのコードを信用して
手続きを頭に置きつつ直観でつくり変えていくことになる
そんで流して結果変わってなきゃOKと

理想が定義されているからといって現実に耐えうるかというと
0132仕様書無しさん
垢版 |
2018/04/18(水) 23:36:04.44
>>129
基本的にメトリクス測定ツールは、基準値超えたら
アラート出してくれるはずだからそれに従えばいいと思うけど、
俺はCyclomatic複雑度を重視するね。
0133仕様書無しさん
垢版 |
2018/04/18(水) 23:51:21.89
>>130
改修による単体工数の削減はあるかもしらんが

時間重視ならなおのことリファクタやってるひまなんかないだろ
あれほどの時間泥棒もない

よく考えたら書くほうが早いっつったって
結局その前に理解しないと書き直せないんだから一緒じゃねーか!
だまされるとこだった
0134仕様書無しさん
垢版 |
2018/04/18(水) 23:59:21.26
> よく考えたら書くほうが早いっつったって
> 結局その前に理解しないと書き直せないんだから一緒じゃねーか!

だから、たった一行の修正とか言っても、
その修正にかかる時間は、理解する時間が大半を占めるんだから
リファクタリングしても大差ないって話だよ。

大差ないどころか、複雑なものを複雑なまま、頭の中で理解するほうが
時間かかると思うがね


そして理解した結果をコードに反映させないで、レビューにかかる時間
次に修正する時間、バグ出た時に読み返す時間を費やするか
コードに反映させて、その後にある時間を減らすかどうか
0135仕様書無しさん
垢版 |
2018/04/19(木) 00:04:04.23
>>134
で?結局リファクタやると具体的に何がいいんだっけ?
色々話してるとメリットが全く見えなくなっちゃう
0137仕様書無しさん
垢版 |
2018/04/19(木) 00:22:17.21
>>135
> で?結局リファクタやると具体的に何がいいんだっけ?

まず改修時間はさほど変わらない。
変更リスクもどちらにしろテストする場所なので変わらないし
行数が少ないほうが影響範囲が小さいってこともない

リファクタリングでバグ入れそうなコードは
リファクタリングしなかったらもっとバグを入れやすい

そして、レビューやバグがあったときの読み返し時間の削減
修正内容に自信が持てる。今後の修正の時の改修時間の減少
0138仕様書無しさん
垢版 |
2018/04/19(木) 00:24:02.42
>>137
いや全然わからない
普通に改修する場合と比べて何がいいの?
0139仕様書無しさん
垢版 |
2018/04/19(木) 00:25:04.88
1行の修正でこんなにお金がかかるんですか!
っていう顧客の声がまんまリファクタリングしない場合にあてはまるな

1行の修正だからリスクが少ないとお考えか!?

1行の修正でもお金がかかるってことは、1行だからって
なにかを減らせるわけじゃないんですよ。
0140仕様書無しさん
垢版 |
2018/04/19(木) 00:28:14.81
>>138
そこで普通に改修っていうのは
リファクタリングをしないってこと

リファクタリングが「理解や修正が簡単になるように、内部構造を改善すること」
なのだからリファクタリングしないってこうのは
理解や修正が簡単になるように改善をしないってこと

元からすでに改善済みのものをリファクタリングしろとは言ってない
理解や修正が難しいコードであることは大前提


で「普通に改修」というのは改善なしに複雑なまま修正ということになるのだから
>>137で言ったようなメリットが有る

複雑なものをそのままにして手を入れたら
もっと複雑になるよ。
0141仕様書無しさん
垢版 |
2018/04/19(木) 00:34:51.32
複雑なコードは壊すのがこわいからリファクタできない
簡単なコードは意味がないからリファクタできない
0142仕様書無しさん
垢版 |
2018/04/19(木) 00:37:19.05
>>141
重要なのは手遅れになる前にこまめにやることだよね

大規模リファクタリングなんてのはあってはだめ
リファクタリングだけのための作業なんて持っての他

そうやって手遅れにするから、リファクタリングのための
工数なんて取れるかーみたいな話になる

リファクタリングは、機能追加や変更に伴う作業に
含まれているべきものですよ
0143仕様書無しさん
垢版 |
2018/04/19(木) 02:08:38.73
>>142
今どきリファクタリングするのは機能追加や変更のタイミングに限らないよ
DDDやってる?機能の変更がなくても、業務にモデルを合わせるために日々リファクタリングするのが常識
0144仕様書無しさん
垢版 |
2018/04/19(木) 02:28:05.80
こんな事が書いてあるのかw

http://hideoku.hatenablog.jp/entry/2013/03/07/223727

変更を完全に正当化できるまで待つのは、待ちすぎというものである。
プロジェクトはすでに重いコストを負っていて、先延ばしにすると変更するのがより
困難になる。対象となるコードには今より手が入り、さらに多くの他のコードに組み込まれることになるからだ。

継続的なリファクタリングは「ベストプラクティス」と考えられるようになってきたが、
ほとんどのプロジェクトチームは依然として慎重すぎる。コードを変更するリスクと、変更にかかる開発者の時間のコストを見込んでいるためだ。

しかし、それほど簡単に見抜けないのが、設計をぎこちないままにしておくリスクと、
その設計を何とかするためのコストである。

リファクタリングを行いたい開発者は、その決定が正統なものであると証明するよう求められることが多い。
こうした要求は理にかなっているように見えるが、もともと難しいものを不可能なほど難しくして、
リファクタリングを抑制する(または見えない所で行わせる)傾向がある。

ソフトウェア開発は、変更することで得られる利益や変更しないことで生じるコストを
正確に割り出せるような、予測可能なプロセスではない。
0145仕様書無しさん
垢版 |
2018/04/19(木) 07:16:17.90
リファクタリングがだめなのではなく
おまえらがやるからだめなのだ
0146仕様書無しさん
垢版 |
2018/04/19(木) 07:34:45.44
>>144
駄目コード(ウィルスみたいなもん)をばら撒いてから治療なんて無理だからねえ。
0147仕様書無しさん
垢版 |
2018/04/19(木) 08:13:02.34
結局は客がデグレを笑って許してくれるかどうかな気がしてきた
0148仕様書無しさん
垢版 |
2018/04/19(木) 09:20:08.21
でかくてモノリシックなシステムを複数のマイクロサービスにリファクタリングしたけど、
デグレなんて起きなかったな
0149仕様書無しさん
垢版 |
2018/04/19(木) 09:40:04.23
>>147
だからデグレは複雑なコードのまま変更するほうが
リスク高いんですってばw
0150仕様書無しさん
垢版 |
2018/04/19(木) 09:44:31.35
>>149
リファクタリングは処理の内容を変えないで
コードをわかりやすく再配置するだけだから
デグレのリクスはすごく低いんだよね

>>145
リファクタリングがだめなのではなく
闇雲に修正するのがだめなのだ
0151仕様書無しさん
垢版 |
2018/04/19(木) 10:41:14.32
>>150
> リファクタリングは処理の内容を変えないで
> コードをわかりやすく再配置するだけだから

外側は変えないけど内容は変えますよ
なに言ってるんですか
0152KAC
垢版 |
2018/04/19(木) 15:09:42.31
>>149
難解なコードを読み解いて修正前に正しく把握するのは難しいという主張?
0153仕様書無しさん
垢版 |
2018/04/19(木) 16:40:47.18
リファクタ厨はその時々でリファクタリングの定義を変えるので話にならない
正反対のことを平気でメリットとして主張してくる
0154仕様書無しさん
垢版 |
2018/04/19(木) 20:32:34.99
>>144
わからないことや見えないことを逆に肯定理由にする
宗教家と同じ手口だな!
0155仕様書無しさん
垢版 |
2018/04/19(木) 21:36:48.00
ある程度経過したコードは捨てろ。
リファクタなんぞせず。

さらにある程度経過したシステムは捨てろ。
リファクタなんぞせず。
0156仕様書無しさん
垢版 |
2018/04/19(木) 21:39:51.72
>>151
実装は変えるけど、処理の内容は変えませんよw
処理の内容っていうのは、1から1000までの数を足すとかいうことです。

forループを使うとか、計算式を使うっていうのは
実装であって処理の内容じゃありません
0157仕様書無しさん
垢版 |
2018/04/19(木) 21:40:23.43
>>152
> 難解なコードを読み解いて修正前に正しく把握するのは難しいという主張?

違う。時間がかかるという主張
0158仕様書無しさん
垢版 |
2018/04/19(木) 21:45:12.79
コーダーの時間が現実のリスクとのトレードオフに値するだろうか?
0159KAC
垢版 |
2018/04/19(木) 21:49:39.33
>>157
解読せずにリファクタリングすると酷いことになるだけだぞ?
0160仕様書無しさん
垢版 |
2018/04/19(木) 21:52:17.10
>>156
どのように実装するかというのが処理の内容だから
リファクタリングで変更しないのは外部仕様な
内側は変えていいんですよ
0161仕様書無しさん
垢版 |
2018/04/19(木) 21:56:06.09
改修のためのリファクタリングって15年前ぐらいの考え方
今さら熱く語るようなトピックでもない
0162仕様書無しさん
垢版 |
2018/04/19(木) 21:57:46.81
>>159
> 解読せずにリファクタリングすると酷いことになるだけだぞ?

リファクタリングする時に解読しないなんて誰が言ったの?

そもそも解読が必要になってるのはリファクタリングしてなかったからなんだが、
まあそんなこと言ってもしょうがない。過去の話だ。

今手元にあるのは解読が必要なほど複雑なコード
リファクタリングをしないということは、複雑なコードをそのままに
さらに複雑にする行為。それをレビューしてもらったって、できるわけがない。
なにせ解読が必要なほど複雑なコードなんだから、

そして、せっかく時間を書けて解読しても、その解読をコードに反映させないなら
次回修正する時にまた時間がかかる。そして次回修正はそんなに先のことじゃないかもしれない
なぜなら複雑なコードをさらに複雑にしたのだから、デグレのリスクも高い


せっかく時間かけて解読したのだから、それをコードに反映(リファクタリング)させましょう。
読むのは時間かかるが、書くのは大して時間はかからない。
そうすれば、リファクタリングしなかった場合の時間がかかるという問題が解決できる。

何回も同じこと言ってるんだけどなw
0163仕様書無しさん
垢版 |
2018/04/19(木) 22:01:18.70
あと解読するときも、最初から最後まで想像して解読するよりも
簡単なところから一歩ずつやったほうがいいよ
0166仕様書無しさん
垢版 |
2018/04/19(木) 22:11:04.54
まったり普通にまともなこと言っても誰も相手してくんないし
0167仕様書無しさん
垢版 |
2018/04/19(木) 22:23:27.27
本質的に複雑なものはどうやったって複雑なので、考えるべきは複雑さをどこに押し込めるかだ
複雑な処理もリファクタリングすればシンプルになると信じてる奴は、まあ本質的には簡単なことしかやってないんだろう
例えば、SQLがわからないユーザーのために、DBにUIを提供するだけのCRUDアプリとか
0168仕様書無しさん
垢版 |
2018/04/19(木) 22:25:12.05
関数レベルのリファクタリングじゃ抜本的な設計改善にはならないからなぁ
やらないよりはやった方がいいけど、まぁ趣味の話だな
0169仕様書無しさん
垢版 |
2018/04/19(木) 22:29:02.98
>>167

> 例えば、SQLがわからないユーザーのために、DBにUIを提供するだけのCRUDアプリとか

あんたは複雑なことをしたいのかもしれないけど
仕事なんだから客が求めるものを作るべきでは?

客は本質的に複雑なものばかり、求めてるんですか?
客が求めてるものは簡単なものばかりですよ。
0170仕様書無しさん
垢版 |
2018/04/19(木) 22:34:00.95
>>168
設計ってどこまで含んでいってる?
クラス設計は? どういうメソッドが有るとか
どういう階層をしているかとか
0171仕様書無しさん
垢版 |
2018/04/19(木) 22:36:08.75
データベース設計なら、まんまデータベースリファクタリングって
本があるけどもう売ってないな
0172仕様書無しさん
垢版 |
2018/04/19(木) 22:48:51.20
>>169
本質的に簡単なことって、頑張れば誰にでもできるじゃん?
実際、キャリアの少ない若手プログラマだって、先輩やらの手助けを受けつつもちゃんと動くコードを書いて納品してるわけで

たかだか数年の経験しかないプログラマにでもやれなくはない程度の仕事を、ああだこうだいって多少整理された状態に
持っていくのがお前の言うリファクタリングでしょ?
まぁ誰かがやらなきゃいけない仕事なんだろうけど、それって汚いコードを書く奴の尻拭い以上のものではないし、
ドヤって語るほどのもんでもないように思うけどなー
0173仕様書無しさん
垢版 |
2018/04/19(木) 23:02:09.88
改修後に予定されているテストでカバーできる範囲でリファクタするというのは
ひとつの答えのようにおもえる

あとはリファクタしたほうが本当にましになってるのかという問題
0174仕様書無しさん
垢版 |
2018/04/19(木) 23:05:48.73
>>172
> 本質的に簡単なことって、頑張れば誰にでもできるじゃん?

本質的に簡単なことって、頑張れば(=コストと時間をかければ)誰にでもできるよ?

でもそれじゃだめだよね
コストと時間がかかってるんだから
0176仕様書無しさん
垢版 |
2018/04/19(木) 23:07:11.05
関係ないけど安定した共通化部分から
関数抽出して使いまわしたいんだけど
やっていいもんじゃろか?
0177仕様書無しさん
垢版 |
2018/04/19(木) 23:13:04.60
>>173
将棋でも自分の指した手がいい手かどうかわからない人いるよね。
初心者?上級者?

マシになってるかどうかわからない?
将棋で言えばどっちかな?


自分の指した手が良いかどうかわからないってことは
恥ずかしいことだと思ったほうが良い。


まあ、初心者なら仕方ないけど、そういう人は
コードメトリクスを計測したら良いよ。
客観的に良いか悪いかを判断してくれる。
0178仕様書無しさん
垢版 |
2018/04/19(木) 23:16:49.13
>>177
>自分の指した手が良いかどうかわからないってことは
>恥ずかしいことだと思ったほうが良い。

やっぱりやらないに越したことはないな!
0179仕様書無しさん
垢版 |
2018/04/19(木) 23:28:59.50
>>178
なんで?
そういう人はコード書いたらダメだって言ってるんだけど?
0181仕様書無しさん
垢版 |
2018/04/19(木) 23:33:30.35
人の問題なのか、技術の問題なのか
その区別ぐらいはできるだろうけどな

俺が運転すると事故るから
車はだめだみたいな。
0182KAC
垢版 |
2018/04/19(木) 23:44:08.24
>>162
改造するのは解読に時間がかかる
リファクタリングすると解読に時間がかかる

で、何がメリットだって主張?
0184仕様書無しさん
垢版 |
2018/04/20(金) 00:03:23.46
>>182
コピペしろって言ってる?

162 自分:仕様書無しさん[sage] 投稿日:2018/04/19(木) 21:57:46.81
>>159
> 解読せずにリファクタリングすると酷いことになるだけだぞ?

リファクタリングする時に解読しないなんて誰が言ったの?

そもそも解読が必要になってるのはリファクタリングしてなかったからなんだが、
まあそんなこと言ってもしょうがない。過去の話だ。

今手元にあるのは解読が必要なほど複雑なコード
リファクタリングをしないということは、複雑なコードをそのままに
さらに複雑にする行為。それをレビューしてもらったって、できるわけがない。
なにせ解読が必要なほど複雑なコードなんだから、

そして、せっかく時間を書けて解読しても、その解読をコードに反映させないなら
次回修正する時にまた時間がかかる。そして次回修正はそんなに先のことじゃないかもしれない
なぜなら複雑なコードをさらに複雑にしたのだから、デグレのリスクも高い


せっかく時間かけて解読したのだから、それをコードに反映(リファクタリング)させましょう。
読むのは時間かかるが、書くのは大して時間はかからない。
そうすれば、リファクタリングしなかった場合の時間がかかるという問題が解決できる。

何回も同じこと言ってるんだけどなw
0186KAC
垢版 |
2018/04/20(金) 07:25:56.11
>>184
リファクタリングに時間がかかるって主張だよな?
0187仕様書無しさん
垢版 |
2018/04/20(金) 14:41:02.18
数字を入力するのにテンキー使う奴の地雷率は100%
0188仕様書無しさん
垢版 |
2018/04/20(金) 19:02:31.75
ソフトウエアの問題は
どんなに技術的に見えようとも
人間の問題である

って偉い人が言ってた
0189仕様書無しさん
垢版 |
2018/04/20(金) 19:05:43.41
>>188
(底辺ではなwww)

が抜けてる
0190仕様書無しさん
垢版 |
2018/04/20(金) 21:52:25.40
問題というのは人間の主観的認識なのだから
人間の問題でない問題などというものがあろうか?
0191仕様書無しさん
垢版 |
2018/04/20(金) 23:16:13.44
>>186
> リファクタリングに時間がかかるって主張だよな?

なんでそう何度も曲解するの?
わざとだよね?

時間がかかるのは、コードの修正。
リファクタリングしなくても時間がかかる
0192仕様書無しさん
垢版 |
2018/04/20(金) 23:20:25.44
正確に言えばコードの修正を始めるまでの
コードを解析している時間だな

たった一行の修正なのにこんなにするんですか!?って
言われるぐらいの費用になるのは、"コードのタイピング"には
含まれない部分がたくさんある
0193KAC
垢版 |
2018/04/20(金) 23:23:17.89
>>192
で、コードを解析する時間は
 リファクタリング > 一部修正
だって理解できないの?

「リファクタリング終わったコードを修正する時間は短い」
という主張に誤りは無いが、
リファクタリングする時間を無視してどうする。
0194仕様書無しさん
垢版 |
2018/04/20(金) 23:23:47.05
>>190
そういうレベルの人はコードメトリクスを計測するツールを使ったほうが良い
ツールで問題が有るとされたコードはほぼ確実に問題が有る
0195仕様書無しさん
垢版 |
2018/04/20(金) 23:28:17.97
>>193
> で、コードを解析する時間は
解析する時間って言ったのに、お前


> リファクタリング > 一部修正

修正する時間に話がすり替わってるじゃんw


解析する時間、すなわち複雑なコードをよんで
それがなにを意味しているか、どう書換えれば
正しく動くかを、考える時間は

リファクタリングしながら解析する時間 < 一部修正のために解析する時間

こうだからな。

ぐちゃぐちゃに絡み合った紐の束から、少しづつ結び目をときながら、
適切な一本を抜き出すのと、結び目をとかずに適切な一本だけを抜き出すの
どちらが簡単なのかを考えればわかるだろ
スパゲティコードとはよく言ったものだw
0196仕様書無しさん
垢版 |
2018/04/20(金) 23:42:05.55
>>194
それはそれでわかったが

言ったことの返答にもなってない
話のつながりが見えない
レベルが何を指すのかわからない
問題が何を指すのかわからない

リファクタする奴は思考が支離滅裂だな
0197仕様書無しさん
垢版 |
2018/04/21(土) 00:05:35.08
あぁ、問題は全て、人間の主観的な問題!というのが間違いだよ、
客観的な問題も有るよっていったのが通じてないのか
話が分からんやつは困るな
0198KAC
垢版 |
2018/04/21(土) 00:14:22.07
>>195
お前さん、開発したこと無いの?

一部の修正の為に必要な解析情報量と
リファクタリングに必要な解析情報量の
違いすらわからないなら
解析の仕方がおかしいか、
内容を十分理解せずにリファクタリングしてるって事。
0199仕様書無しさん
垢版 |
2018/04/21(土) 00:17:57.77
>リファクタリングしながら解析する時間 < 一部修正のために解析する時間

個人的経験から断固として異議を唱えたい
0202仕様書無しさん
垢版 |
2018/04/21(土) 00:23:24.27
つーかさ、誰も100%納得がいくまで
リファクタリングしろなんていってないんだよ。
修正する所、どちらにしろテストが必要な所
関係がある所を、少しづつやればいい。

時間がかかるっていうのは、それはいつも手遅れの
コードばかりだって自覚有るからじゃねーの?
0204仕様書無しさん
垢版 |
2018/04/21(土) 00:25:43.38
>>142でも書いたが、
リファクタリング=大規模なものしかイメージできてないって
状態がそもそもやばいよ

142 自分:仕様書無しさん[sage] 投稿日:2018/04/19(木) 00:37:19.05
>>141
重要なのは手遅れになる前にこまめにやることだよね

大規模リファクタリングなんてのはあってはだめ
リファクタリングだけのための作業なんて持っての他

そうやって手遅れにするから、リファクタリングのための
工数なんて取れるかーみたいな話になる

リファクタリングは、機能追加や変更に伴う作業に
含まれているべきものですよ
0206仕様書無しさん
垢版 |
2018/04/21(土) 00:26:42.60
リファクタリングをしたから具体的にどういうコードがどうなってそれでどのくらい得になるのかわからない
0209仕様書無しさん
垢版 |
2018/04/21(土) 00:29:13.26
>>207
ん? すでに過去レスで書いたって言ってるんだけど、
お前はどのレスが「説明」だと思ったの?
0210仕様書無しさん
垢版 |
2018/04/21(土) 00:29:45.71
肝心のマーチン本からして何が得なのかよくわからん有様
0212仕様書無しさん
垢版 |
2018/04/21(土) 00:33:26.89
理解がちょっとづつ歪んでいくな
リファクタでも同じように処理をちょっとずつゆがめて気が付かずにいるにちがいない
0214仕様書無しさん
垢版 |
2018/04/21(土) 00:35:02.56
https://blogs.yahoo.co.jp/mathweather4067/5819997.html

> 指導のポイント
> ここの指導は、難しい。なかなか理解されないのが、現状です。
>
> まずは、「等式の性質」を思い出させることが必要でしょう。
>
> 次に、「1次方程式の解法」も思い出させます。
>
> その後、1次方程式の解法と対比させながら、進めていきます。
>
> 「等式の変形」は、等式をその目的に応じて変形することの良さが理解できていないと、
> 何のためにするのかがわからないまま、機械的に進めてしまいます。
>
> 導入部分を大事にしたいですね。


まさにコレだな
0216仕様書無しさん
垢版 |
2018/04/21(土) 00:35:28.22
>>212
自分の都合のいいように捏造と曲解ばっかりしてるよね
一度もまともな実績がないくせに何で役に立つって言うんだろうね
どうせ数字も捏造してんだろう
0217仕様書無しさん
垢版 |
2018/04/21(土) 00:38:32.40
>>216
曲解って俺が先に指摘したんだけど、
言われて悔しかったからって自分も使おうとしないでよw
どれが曲解かを指摘してない以上意味ないよ
0220仕様書無しさん
垢版 |
2018/04/21(土) 00:45:19.25
>>214
そいつの説明が悪すぎる、良さってなんやねん

理解してもらえないのではない
自分が理解もせずに良いものだと思い込んでいるだけだ

本当に理解してたら必要性や可能になることを明確に説明できるはず
0221仕様書無しさん
垢版 |
2018/04/21(土) 00:53:21.22
本当に理解している本の作者が
十分以上に説明してるんだけどなぁ
0222仕様書無しさん
垢版 |
2018/04/21(土) 00:57:49.37
修正ってほんの数行程度なのに対して
リファクタリングってほぼ全域書き換えでしょ?
そりゃ影響範囲が違いすぎるよ
0223仕様書無しさん
垢版 |
2018/04/21(土) 01:00:47.75
読んだ上でいってんのか?

142 自分:仕様書無しさん[sage] 投稿日:2018/04/19(木) 00:37:19.05
>>141
重要なのは手遅れになる前にこまめにやることだよね

大規模リファクタリングなんてのはあってはだめ
リファクタリングだけのための作業なんて持っての他
0224仕様書無しさん
垢版 |
2018/04/21(土) 01:19:48.95
大規模リファクタリングもありえるよ
こまめにって言ってるのは、せいぜい関数レベルのリファクタリングの話でしょ
まだそれぐらいしか任せてもらえない立場なのかもしれないが、リファクタリングってそれだけじゃないから
0225仕様書無しさん
垢版 |
2018/04/21(土) 06:51:17.73
じゃこう考えよう

リファクタリングは
テストコードのデバッグ
0226仕様書無しさん
垢版 |
2018/04/21(土) 07:13:19.41
もうコーディング=リファクタリングでええやん
0228仕様書無しさん
垢版 |
2018/04/21(土) 08:09:45.92
なんで、こんな派遣すら首になるようなリファクタバカを相手にしてるの?

基地外に何言っても無駄だよ。
相手の言葉を聞く能力がないからキチガイにして派遣すら首になってんだから。
0229仕様書無しさん
垢版 |
2018/04/21(土) 08:59:08.52
>>223
214のどこを読めばそのレスとつながるのか
ID出ない板で自分がわかれば相手もわかるとか思ってるとか
0234仕様書無しさん
垢版 |
2018/04/21(土) 12:10:29.62
どんなきれいなソースコードでも
プログラムから仕様を起こすのは大変

だから現場が仕様を忘れる前に、再開発をするのが正しい

つまり、リファクタリングなんぞ不要
0235仕様書無しさん
垢版 |
2018/04/21(土) 12:12:22.10
やっぱ
日本人のソフト開発って
土木工事想定なのな
0236仕様書無しさん
垢版 |
2018/04/21(土) 12:14:21.71
日本は土建と同じ構造

世界は基本的に内製
0240仕様書無しさん
垢版 |
2018/04/22(日) 08:54:37.71
リプレースって、普通の文脈だとシステム置き換えじゃねーの?
コード周りの文脈でリプレースなんて表現するのか?
0241仕様書無しさん
垢版 |
2018/04/22(日) 11:36:40.79
>大規模リファクタリングもありえるよ

大規模リファクタリングとは
リプレイスの事ではないかと言う主張だよ
0243仕様書無しさん
垢版 |
2018/04/22(日) 11:52:15.63
リプレースってハードウェア更新でしょ?
5年ごとにハードウェアを最新にして、ついでにソフトウェアも新ハード新OS向けにテストしますよと
で、ほとんどはリビルドで済む話だけど
どさくさにまぎれてちょっと不具合修正しましょうとか機能追加して欲しいとなる
そこにリファクタリングする余地は確かに出てくる
本来必要ないのに修正するという意味ではいかにもリファクタリングだ
0246仕様書無しさん
垢版 |
2018/04/22(日) 14:21:37.97
大規模リファクタリングなんてあってはならないと言っちゃった以上、「俺のリファクタリング」より大規模なものは、
リプレースでもなんでもいいけどリファクタリング以外のなにかでないと困るんだもんね
0249仕様書無しさん
垢版 |
2018/04/22(日) 14:48:42.49
>>246
リファクタリングの定義は、外部的振る舞いを変えずに
理解や修正が簡単になるように内部構造を改善することなんだが
お前の言うリプレースっていうのは、外部的振る舞いを変えないものってことか?
0250仕様書無しさん
垢版 |
2018/04/22(日) 14:49:01.88
> リプレースでもなんでもいいけどリファクタリング以外のなにかでないと困るんだもんね
普通にバージョンアップでは?
0252仕様書無しさん
垢版 |
2018/04/22(日) 14:52:10.53
>>246
> 大規模リファクタリングなんてあってはならないと言っちゃった以上

お前意味分かってんのか?

大規模リファクタリングなんてあってはいけないっていうのは
許されるのは小規模(せいぜい中規模)リファクタリングまでで
リファクタリングだけを大規模にやってはいけないないってことなんだが?
0253仕様書無しさん
垢版 |
2018/04/22(日) 14:56:24.55
なんで大規模リファクタリングがあってはならないのかというと
リファクタリングは、機能変更の中に含まれる、
通常のソースコード変更時に、こまめに行うものだから

大規模リファクタリングが必要になるのは、こまめにリファクタリングしてないで
ソースコードをどんどん劣化させ、限界がきたから作り直す
(それもリファクタリングではない手法で)となってる場合が多い。

大規模リファクタリングのほとんどは単なる改修という意味になっていて
リファクタリングとなってない事が多い
0254仕様書無しさん
垢版 |
2018/04/22(日) 14:58:32.10
>>243
> 本来必要ないのに修正するという意味ではいかにもリファクタリングだ

何だその定義?
外部的振る舞いを変えずに理解や修正が簡単になるように
内部構造を改善することだけが「いかにもリファクタリング」って
言って良いんだよ。

必要ないのに修正するのがリファクタリングなんて定義初めて聞いたわw
どーこーの、定義ですか?ソースくださいw
0255仕様書無しさん
垢版 |
2018/04/22(日) 15:01:25.15
>>243

> で、ほとんどはリビルドで済む話だけど
> どさくさにまぎれてちょっと不具合修正しましょうとか
それは不具合修正であってリファクタリングではない
(外部的振る舞いが変わっている)

> 機能追加して欲しいとなる
それは機能追加であってリファクタリングではない
(外部的振る舞いが変わっている)


リファクタリングというのは、不具合修正や機能追加を行う際に
行うもので、不具合修正や機能追加でやる内容の一部
リファクタリング or 不具合修正 or 機能追加 ではない

不具合修正(リファクタリング含む) or 機能追加(リファクタリング含む)
である
0256仕様書無しさん
垢版 |
2018/04/22(日) 15:05:42.64
>>247
そんなことないと思うけど

>>248
そんなことないと思うけど
一社童貞のやつよりよっぽどマシ
0257仕様書無しさん
垢版 |
2018/04/22(日) 15:14:25.01
>>249
俺自身は発言の中でリプレースとはどういうものかとはなにも規定してませんが
まぁ外部的振る舞いという面で考えると、変わる場合もあれば変わらない場合もあるよね当然
で、たまたま外部的振る舞いが変わらなかったとしても、それをリファクタリングとは呼ばないよね
0260仕様書無しさん
垢版 |
2018/04/22(日) 15:21:57.33
> で、たまたま外部的振る舞いが変わらなかったとしても、それをリファクタリングとは呼ばないよね

そりゃそうだろうね。
リファクタリングは動きを変えないために、
特定の手順にしたがってソースコードを修正する

http://shop.ohmsha.co.jp/shopdetail/000000003881/
ここの詳細目次の、5章(は解説なので正確には6章)から
その手順がリファクタリング・カタログとしてまとめられてる。
これを読むと、このやり方なら動きが変わるわけないなってわかるはず。

そしてもう一つ重要なのはテスト。テストによって
外部的振る舞いが変わらないことを保証する
だから、たまたま外部的振る舞いが変わらないっていうのは
テストを実行してないんじゃないかと思われる

テストを実行して、外部的振る舞いが変わらないのを確認するのが
リファクタリングだから、修正のたびに何度も "意図的に" 外部的振る舞いが
変わってないことを確認してる(だからたまたまなんて思わない)
0261仕様書無しさん
垢版 |
2018/04/22(日) 15:23:41.48
>>253
普段の改修の中でこまめに行うものだけがリファクタリングじゃないよ
プログラム全体に波及するような設計の変更は、ボーイスカウトルールに則ってるだけじゃやれないからね
0262仕様書無しさん
垢版 |
2018/04/22(日) 15:24:49.90
意図的に外部的振る舞いが変わらない形で修正して
確認するのがリファクタリングだから、
たまたま動きが変わらないのは、単なるソースコードの変更ってことか
多いんだよな、単なるソースコードの変更をリファクタリングとか言ってるやつ
0263仕様書無しさん
垢版 |
2018/04/22(日) 15:25:29.52
>>261
プログラム全体に波及するような設計の変更を
こまめにやるってだけですが?
0264仕様書無しさん
垢版 |
2018/04/22(日) 15:29:59.37
プログラム全体に波及するような設計の変更を
こまめにやるためのテクニックも↓に書いてありますよ。

> http://shop.ohmsha.co.jp/shopdetail/000000003881/
> ここの詳細目次の、5章(は解説なので正確には6章)から
> その手順がリファクタリング・カタログとしてまとめられてる。
> これを読むと、このやり方なら動きが変わるわけないなってわかるはず。

えいやってやるしかないと思ってるのは
単にその力がないだけ
0265仕様書無しさん
垢版 |
2018/04/22(日) 15:32:00.64
テストしないでコード整理するのも時には必要
あまりにも悲惨なコードに短時間で多数の機能を追加しなきゃならん時とかね
多少のミスは割り切ってリファクタリングして機能追加して全体を手動テストして納品する
俺はこれをエクストリームリファクタリングと呼んでる
厳密なリファクタリング信者からすると気持ちわるいかもしれないが生産性は高い
0266仕様書無しさん
垢版 |
2018/04/22(日) 15:35:23.66
>>258
ド素人か?
この業界で中規模と言ったら1000行以上、1万行未満のことだ
0267仕様書無しさん
垢版 |
2018/04/22(日) 15:35:46.27
経験が少ないと、大規模リファクタリングの必要性に直面する状況が想像できないかもしれない
そういう場面も多々あるもんだけどね
0268仕様書無しさん
垢版 |
2018/04/22(日) 15:35:59.41
>>259
井の中の蛙と大海の大ウミガメの違いと言えばおわかりになるでしょうか
0269仕様書無しさん
垢版 |
2018/04/22(日) 15:39:24.39
>>265
うん。だから動きが変わるかもしれないわけでしょ?
それは単なる修正って言えば良いんだよ。
リファクタリングと呼ばなければいい

>>267
> 経験が少ないと、大規模リファクタリングの必要性に直面する状況が想像できないかもしれない
想像してるぞ?

こまめにリファクタリングしなかったから、
ソースコードに限界が来てしまった場合に
大規模リファクタリングになるって言ってるじゃないか
(そういう自体になる前にこまめにリファクタリングしよう)
0270仕様書無しさん
垢版 |
2018/04/22(日) 15:40:10.62
>>265
そんなのファウラーの本に書いてあるか?
あの基本書の内容を踏襲していない行為をリファクタリングとは呼びませんよ?
0271仕様書無しさん
垢版 |
2018/04/22(日) 15:40:31.92
>>267
× 経験が少ないと、大規模リファクタリングの必要性に直面する状況が想像できないかもしれない
○ 経験が少ないと、大規模 改修 の必要性に直面する状況が想像できないかもしれない

なんでリファクタリングじゃないものを
リファクタリングって呼ぶんですか?

リファクタリングを単なる改修の意味で使わないでください
0272仕様書無しさん
垢版 |
2018/04/22(日) 15:41:21.46
>>270
> あの基本書の内容を踏襲していない行為をリファクタリングとは呼びませんよ?

そうですね。基本書の内容を踏襲していない行為は
リファクタリングと呼んではいけません。
ただの改修と言いましょう
0273仕様書無しさん
垢版 |
2018/04/22(日) 15:42:30.64
なんで改修をリファクタリングって言いたいんだろう?
かっこつけたいのかな?
0274仕様書無しさん
垢版 |
2018/04/22(日) 15:43:40.96
言葉の定義とかつまらんからもっと益になる話しようぜぇ

グローバル変数(public static 変数も含む)を安全に排除するリファクタリングテクニックについて議論しよう
リファクタリングするときいつもこれだけはスマートに解決できない
リスクを背負って修正するしかなくなる
0276仕様書無しさん
垢版 |
2018/04/22(日) 15:49:05.55
>> 271
> なんでリファクタリングじゃないものを
> リファクタリングって呼ぶんですか?

お前にとっての「僕のリファクタリング」なんて知らんがな
0278仕様書無しさん
垢版 |
2018/04/22(日) 15:56:28.91
>>276
俺にとってのとかじゃなくて
リファクタリングの正しい定義だ
ちゃんと調べてこいよ。
単なる改修の意味で使うな
0279仕様書無しさん
垢版 |
2018/04/22(日) 15:59:46.87
最初に書いたテストがリファクタリングの前後で同様に動くとは限らない
壊れたテストを書き直すのもリファクタリングの一部
0282仕様書無しさん
垢版 |
2018/04/22(日) 16:09:52.55
ここまで技術的な話題ゼロwwwマ板は素人しかいないってホントだったのか
0283仕様書無しさん
垢版 |
2018/04/22(日) 16:10:33.85
>>281
なんでまた曲解するの?
2つの別々の話を混ぜないように

1. 大規模なものも小規模なものも外部的振る舞いが
変わらないようにちゃんとした手順で行って
テストで確認してるならリファクタリング
そうでないなら、単なる改修

2. 大規模リファクタリングが必要になるのは
普段からこまめにリファクタリングしてないから。
普段の改修の中でこまめにリファクタリングしていれば大規模なんて必要ない。
必要になるのは普段からリファクタリングしてなくて、
手遅れ状態になってる証拠。そういうのはあってはだめ
0284仕様書無しさん
垢版 |
2018/04/22(日) 16:37:26.44
リファクタリングは小まめに行うべきか?
ある程度たまってから行うべきか?

結論:リファクタリングが不要になるように書け!
0285仕様書無しさん
垢版 |
2018/04/22(日) 16:38:45.75
将来の改修や拡張の方向性がわからないのにんあことできるわけないだろ!
0286仕様書無しさん
垢版 |
2018/04/22(日) 16:55:29.35
リファクタリングはソースの修正が必要だから行う
つまりソースの修正が必要なくなればいい
データベースでいうところの、UPDATEではなくINSERTになるようにすればいい
つまり、適切な粒度で関数(メソッド)を適切に作成すれば
リファクタリングは不要なのではないか?
例えば、1関数20行という教えはそういう意味も内包しているのではないか?

今までリファクタリングが必要になった場面を思い出して欲しい
やたら長い関数、スコープが不適切な変数、マジックナンバーやあり得ないelseの使い方などがほとんどではないだろうか?
本当にリファクタリングが必要な場面などほぼ無いはずである

もしリファクタリングが必要だというのであれば、それは清書を後回しにして適当に書きなぐることを優先した結果であり
そもそも「ソースを書いていない」わけである
漫画であればペン入れをしていない下書きやネームの状態、ガンプラでいえば接着剤を使わず仮組をした状態だ
もちろん、「正しく作る」ことよりも「とりあえず動く」ものを何よりも時間を優先して作ることが至上命題であることもあるだろう

それでも書道の名家は一発で何度でも美しい書体を生み出す
プログラマであっても一発で完全に美しいソースコードを生み出すスキルは必要なのではないだろうか?

以上のことから、「リファクタリングが不要になるように書け!」というのは正しいと言える
0287仕様書無しさん
垢版 |
2018/04/22(日) 16:58:10.99
>>280
意味明瞭
0288仕様書無しさん
垢版 |
2018/04/22(日) 16:58:35.06
>>286
あー、いや、テストファーストでは
最初にテストコードを書いて、
テストに通る最低限のコードを書いて
そのあとリファクタリングして
完成だから

つまりあんたの言う「ソースを書いている」状態にするまでに
リファクタリングをする。

ちょっと勉強し直してきて
0289仕様書無しさん
垢版 |
2018/04/22(日) 17:02:47.45
もちろんテストファーストをしないならリファクタリングはしないってことじゃないよ。
先に実装しても、その後テストコードを書いて、それが通るのを維持しながら
ソースコードを読みやすくする。これもリファクタリング
0290仕様書無しさん
垢版 |
2018/04/22(日) 17:07:13.80
テストファーストはリファクタリングじゃないですよ
0291仕様書無しさん
垢版 |
2018/04/22(日) 17:08:24.89
テストファーストはテストを先に書くってだけで
リファクタリングを内包するわけじゃないですよ
0292仕様書無しさん
垢版 |
2018/04/22(日) 17:08:52.51
テストファーストとリファクタリングは独立した概念です
0293仕様書無しさん
垢版 |
2018/04/22(日) 17:08:57.78
>>290
テストファーストの手順の中に含まれるものだって話をしてるんだから
テストファースト=リファクタリングなわけないでしょw
お前の日本語の理解力の問題だ
0294仕様書無しさん
垢版 |
2018/04/22(日) 17:10:15.59
http://www.itmedia.co.jp/im/articles/0602/24/news137.html

>  実行したテストコードが通らなければ『レッド』という状態になり、
> 実装コードを修正する。一方、テストが通った状態は『グリーン』と呼ぶ。
> ただしテストが通っても、可読性を考えてコードをきれいに整えることも多い。
> テストファーストではこの修正作業を『リファクタリング』と呼んでいる。

へー、このスレ勉強になるな
0295仕様書無しさん
垢版 |
2018/04/22(日) 17:11:11.12
個人的にそういうやり方をやってるってだけで
テストファーストとリファクタリングは根本的に異なり
完全に独立して成り立つものですよ
0296仕様書無しさん
垢版 |
2018/04/22(日) 17:12:42.21
テストファーストにリファクタリングは必要ありません
むしろテストファーストの目的を没却する悪手と言っていいでしょう
0298仕様書無しさん
垢版 |
2018/04/22(日) 17:14:35.76
テストファーストでリファクタリングが必要になるなら
テストの粒度が間違っている証拠です、にわかがよくやります
0299仕様書無しさん
垢版 |
2018/04/22(日) 17:14:49.44
>>295
そりゃそうだろw
だからこそ、テストファーストしてから
リファクタリングするって話になる
0301仕様書無しさん
垢版 |
2018/04/22(日) 17:15:28.25
>>299
ではテストファーストとリファクタリングを一緒に語るのをやめるべきです
0302仕様書無しさん
垢版 |
2018/04/22(日) 17:15:31.11
>>298
でも、ぐぐったけど、そんな事ないてないよ
ニワカはお前では?
0304仕様書無しさん
垢版 |
2018/04/22(日) 17:16:22.76
>>302
ググらないとわからないならお前がにわかです
0306仕様書無しさん
垢版 |
2018/04/22(日) 17:17:37.22
>>305
意味明瞭
0307仕様書無しさん
垢版 |
2018/04/22(日) 17:18:09.05
>>301
はい。だからリファクタリングだけでも話をしています。

>>289でもそう書いたでしょう?
> もちろんテストファーストをしないならリファクタリングはしないってことじゃないよ。

テストファースト(開発の前にテストを書く)をしなくても、
リファクタリングは独立したものなので、
開発→テストコードを書く→リファクタリングという手順で、
リファクタリングをすることがあります。

開発の前にテストコードを書いてないのでこれはテストファーストではありません。
0308仕様書無しさん
垢版 |
2018/04/22(日) 17:18:46.64
>>304
でもお前はググってないで、自分の意見を主張しているわけだよね?
そしてそれが世間で言われてないことがバレたよね?
0311仕様書無しさん
垢版 |
2018/04/22(日) 17:19:51.01
グーグルを神か何かだと思ってるんじゃなかろうかね
0312仕様書無しさん
垢版 |
2018/04/22(日) 17:20:34.82
グーグルは知らないが、俺は知ってる。
情報の出どころは教えられないが
俺を信じてくれるよね?
0316仕様書無しさん
垢版 |
2018/04/22(日) 17:29:39.31
>>315
意味明瞭
0318仕様書無しさん
垢版 |
2018/04/22(日) 17:30:32.03
>>317
意味明瞭
0319仕様書無しさん
垢版 |
2018/04/22(日) 17:31:10.19
リファクタリングの定義がないから仕方ない。

コードをいじってばかりのやつは、手段と目的が逆転している。
0321仕様書無しさん
垢版 |
2018/04/22(日) 17:32:16.13
>>320
意味明瞭
0326仕様書無しさん
垢版 |
2018/04/22(日) 17:33:40.70
>>323
意味明瞭
0327仕様書無しさん
垢版 |
2018/04/22(日) 17:34:51.48
>>319
> コードをいじってばかりのやつは、手段と目的が逆転している。

いや、だからリファクタリングだけやるのは論外って言ってるんだが?
目的は機能追加などの改修で、その手段(の一つ)がリファクタリング

目的を実行する時にこまめにやる手段で、手段そのものが目的になってるような
リファクタリングだけの作業とか大規模リファクタリングはおかしいって
言ってるんだが?
0328仕様書無しさん
垢版 |
2018/04/22(日) 17:35:16.48
>>325
意味明瞭をわからない人間の方がブラジル人じゃないだろ
0329仕様書無しさん
垢版 |
2018/04/22(日) 17:35:49.03
>>324
意味がはっきりわかること
0335仕様書無しさん
垢版 |
2018/04/22(日) 17:38:31.57
>>331
お前は普通じゃないし日本人のこと1ミリも理解してない
史実に登場する最初の天皇の名前を言ってみろ
0337仕様書無しさん
垢版 |
2018/04/22(日) 17:39:18.98
>>334
>>268
0338仕様書無しさん
垢版 |
2018/04/22(日) 17:39:54.17
>>336
はい知らないのな、お前日本人のこと1ミリも理解できてない
0339仕様書無しさん
垢版 |
2018/04/22(日) 17:40:09.54
>>335
「意味不明」と「意味明瞭」がちゃんと対照的に使われている例を教えてよ先生
0346仕様書無しさん
垢版 |
2018/04/22(日) 17:43:39.06
ただ、普段からリファクタリングしてたら依頼がきたときに素早く対応できるよね
0348仕様書無しさん
垢版 |
2018/04/22(日) 17:44:11.09
>>339
「意味不明」とは意味がはっきりしないという意味です
「意味明瞭」とは意味がはっきりしてるという意味です
ゆえにこれらの言葉は対称の関係にあるわけです
0353仕様書無しさん
垢版 |
2018/04/22(日) 17:50:04.15
>>351
対照は文脈的に大間違いだったので訂正しました
わかってないのはお前です、お前がカス
0356仕様書無しさん
垢版 |
2018/04/22(日) 17:52:10.58
>>352
意味がはっきりわかるときに、意味明瞭と言います
これが一般的な使用例です

あなたはただの世間知らずというか無知です
無知な人間は自分が賢いと思いこむ傾向にあることが
認知心理学の研究の結果明らかになっています

あなたは自分が無知であるがゆえに意味明瞭という
自分が知らない言葉を使いこなしている僕に嫉妬しています
無知を自覚してください
0358仕様書無しさん
垢版 |
2018/04/22(日) 17:52:56.99
>>355
対照ではないからです
なぜならば対称しているからです
対照関係と対象関係は明らかに異なります
0363仕様書無しさん
垢版 |
2018/04/22(日) 17:54:30.49
>>357
それでは具体的な例を上げます

意味がはっきりわかったときに
意味明瞭と言います

この上なく具体的で一般的な例を提示しました
あなたはそれでもわからないと言いはるでしょう
しかし、それは自分が知らない事柄が存在することを認められないだけです
無知であるがゆえにあなたのプライドはとても高いのです
0365仕様書無しさん
垢版 |
2018/04/22(日) 17:54:58.76
>>362
ただの書き間違いですよ、残念でしたね
0368仕様書無しさん
垢版 |
2018/04/22(日) 17:55:53.40
>>364
一般的に意味がはっきりわかる場面というのはあるでしょう?
無いんですか? ありますよね、ありますよ
完全に一般的です
0370仕様書無しさん
垢版 |
2018/04/22(日) 17:56:21.60
>>366
ただの書き間違いに一生懸命レスしても意味ないですよ
0372仕様書無しさん
垢版 |
2018/04/22(日) 17:56:48.89
>>369
お前がODAに行けよ、万年引きこもり
0376仕様書無しさん
垢版 |
2018/04/22(日) 17:57:26.61
>>371
自分が医者だと錯覚してる人の方があれだと思います
0380仕様書無しさん
垢版 |
2018/04/22(日) 17:58:55.43
>>373
打ち間違いなんてよくあることです
校正する人なんて居ないですしここ5chですし
正確さにこだわったところで1紋の得にもならないですし
一生懸命書き間違いを攻めようとしている様、とても滑稽です
0381仕様書無しさん
垢版 |
2018/04/22(日) 17:59:27.12
>>379
統合失調症と診断できるのは医者だけですよん
想像力足りてなくないですか?
0384仕様書無しさん
垢版 |
2018/04/22(日) 18:00:26.15
統合失調症というのはただの悪口であって
実際に病気かどうかは関係ないよ
世の中で統合失調症って言われてる人で実際に医師の診断受けた人ほとんどいないでしょ?
0387仕様書無しさん
垢版 |
2018/04/22(日) 18:01:12.32
>>382
変換ミスっただけだよ
変換ミスっただけでキチガイ呼ばわりとは
そっちの方がむしろあれじゃないですか
0388仕様書無しさん
垢版 |
2018/04/22(日) 18:01:55.62
>>383
はい統合失調症って断定してた人いましたよ
妄想じゃないですよ、スレを検索してください
そんな人居ないというあなたの方が妄想乙です
0390仕様書無しさん
垢版 |
2018/04/22(日) 18:02:54.03
>>385
よおキチガイ
0393仕様書無しさん
垢版 |
2018/04/22(日) 18:03:56.39
>>389
対称を対象と変換ミスった話ですよ
それを変換ミスの話ではないと思ってるなら
それこそ妄想があれですよね
0394仕様書無しさん
垢版 |
2018/04/22(日) 18:04:20.08
>>387
漢字の違いが主張のポイントなのにその漢字を間違えるなんてありえない
0395仕様書無しさん
垢版 |
2018/04/22(日) 18:04:30.11
>>392
言うに事欠いてそれですかw
0398仕様書無しさん
垢版 |
2018/04/22(日) 18:05:44.70
>>394
間違いは誰にでもありますし
僕は自分のミスを素直に認めていますよ
変換ミスだって、それを一生懸命攻めようとするのは野暮だと思いますし
本来の議論を見失ってると思います
リファクタリングの話をしてましたよね
0402仕様書無しさん
垢版 |
2018/04/22(日) 18:07:51.59
>>396
意味を理解していようといまいと変換ミスは起こるものですよ
0405仕様書無しさん
垢版 |
2018/04/22(日) 18:09:34.98
>>401
ミスった本人がミスだと言ってるわけですからミスですよ
いいやお前はミスターだとかそんな寒いこと言おうとしてるんですか?
やめてください
0406仕様書無しさん
垢版 |
2018/04/22(日) 18:10:36.56
>>404
そこですよ、僕の些細な変換ミスを針小棒大に大問題だと
大騒ぎしてYahoo!のトップを飾ろうと画策してる人はいないにしても
そこですよ
0409仕様書無しさん
垢版 |
2018/04/22(日) 18:12:18.92
で、「意味明瞭」の一般的な使用例はいつになったら出てくるんだい?
0410仕様書無しさん
垢版 |
2018/04/22(日) 18:16:57.87
>>409
>>363

もう何回も言いましたよ
あなたがそれを受け入れられないことも予測してみせました
無知な人間というのは知を拒絶するものなのです

あなたは、意味明瞭という言葉を知らない
僕は、意味明瞭という言葉を知っている
この現実を受け入れられないのです

自分より賢い人間がいることを、自分が知らないことが
世の中にあることを受け入れることができず
自分だけの小さい世界の中に閉じこもって心の平穏を望むのです

僕はそれを悪いことだとは思いませんが無知な人だなって思います
0413仕様書無しさん
垢版 |
2018/04/22(日) 18:19:17.85
>>410
使用例のリンクをいくつか貼るだけなのに何言ってんのこいつ?
0415仕様書無しさん
垢版 |
2018/04/22(日) 18:20:34.20
リファクタリング対象だな
対称でも対照でもなくて
0417仕様書無しさん
垢版 |
2018/04/22(日) 18:21:09.26
>>411
意味がはっきりわかることってありますよね?
現実であなたはそういう経験ないんですか?
僕の妄想の話ではありません、現実にそういうことあるでしょう
そういうときに使います

意味明瞭と言って意味がとてもよくわかりましたと相手に伝えるのです
0419仕様書無しさん
垢版 |
2018/04/22(日) 18:21:58.64
>>413
リンクが貼りたいならあなたが貼りなさいよ
何でもかんでも他人に頼ろうとするな
0428仕様書無しさん
垢版 |
2018/04/22(日) 18:24:53.23
>>421
知らないのなら覚えよう
知らないことを自覚したなら
自分の世界を広げよう

意味がはっきりわかるときに、意味明瞭と言います
そういう言葉があります

明瞭というのははっきりわかるという意味です
ゆえに意味明瞭というのは意味がはっきりわかるという意味です
0435仕様書無しさん
垢版 |
2018/04/22(日) 18:28:30.52
>>427
国語辞典には日本書紀のリンクが載ってるが
日本書紀にはリンクなんて存在しないからな
だからといって日本書紀の日本語はデタラメだと言う人は居ないだろ
リンクというのはそもそもインターネットが普及してグーグルという
営利企業がそれによってランク付けをするように成ってから
重要視されるようになっただけで、それがなくても言葉っていうのは
作られていくし伝わっていくし話されていくんだよ、僕はその言葉の
大切さを少しでも伝えられたらと思います
0438仕様書無しさん
垢版 |
2018/04/22(日) 18:31:03.20
>>430
>>434
ソースは一般社会だ
意味がはっきりわかったときに意味明瞭!と言ってみろ
それで相手に伝わらなかった経験があるわけ?
ないだろうが、意味明瞭というのは完全に一般的な言葉なわけ
0439仕様書無しさん
垢版 |
2018/04/22(日) 18:31:47.08
>>437
オレオレ用語ってなんすか?
国語辞典10冊見ても載ってないんすけど、なんすかそれ?
0442仕様書無しさん
垢版 |
2018/04/22(日) 18:33:01.84
日本書紀に載ってるんすか? オレオレ用語って
いやマジ、そういうの見たことないんでー、この人日本語苦手なのかなってマジそう思うっすー
0444仕様書無しさん
垢版 |
2018/04/22(日) 18:34:03.60
糖質vs糖質
春の休日にふさわしいバトルやなww
0447仕様書無しさん
垢版 |
2018/04/22(日) 18:35:08.84
>>441
明鏡、明解、日本、現国、基準、共明、共立、新日国、現銘、金田一
の10冊
0449仕様書無しさん
垢版 |
2018/04/22(日) 18:36:52.27
>>448
IT社会だから、紙の本は殆どないけどね
いつでも検索できるようにしてる
0452仕様書無しさん
垢版 |
2018/04/22(日) 18:39:36.27
>>450
著作権的にアウトだからムリ
漫画村とかも見たらアカンで
5chで無茶言ってもそういうところはきちんとしないと
0453仕様書無しさん
垢版 |
2018/04/22(日) 18:40:12.62
>>451
意味明瞭の四字熟語は載ってないけど
意味、明瞭では載ってるよ
0455仕様書無しさん
垢版 |
2018/04/22(日) 18:42:38.30
意味明瞭と言った場合、意味が明瞭なんだなってわかるっしょ
漢字は表意文字だからそういうことが可能なんだよ
オレオレ用語も、オレオレ、用語という単語が合わさってできてるんだ
オレオレの意味と用語の意味がわかれば、オレオレ用語は辞書に載ってなくても
自分で定義した用語のことなんだなってわかるっしょ

オレオレ用語だという人間が意味明瞭をわかりませんというのは
完全に道理に反してる卑劣な行為だと知ってほしい
0457仕様書無しさん
垢版 |
2018/04/22(日) 18:43:59.99
>>455
だからその使用例を出してみなって
出せないのは普通そんな使い方しないからやろ
0459仕様書無しさん
垢版 |
2018/04/22(日) 18:45:27.68
>>454
著作権法的に違法行為にあたるからムリなんだ
僕は法律は守りたい、なぜならば法律は社会を成り立たせる
ためにあるものだし、一人ひとりがそれを尊重することによって
法律は成り立つし、それによって社会が成り立つから
法律に違反するというのは社会を否定することであるし
社会を否定して生きていけるほど僕は強くないから
0462仕様書無しさん
垢版 |
2018/04/22(日) 18:46:56.21
>>459
誰も辞書の中身を写せなんて言ってなくね?持ってる辞書のパッケージ写すだけなら何が問題なの?
0463仕様書無しさん
垢版 |
2018/04/22(日) 18:47:28.58
>>457
使用例は
意味がはっきりわかったときに「意味明瞭だ」と言うんだよ
これが使用例です、普通というのはあなたの日常では使いませんという
意味ですよね、それはあなたの語彙が足りてないから使えてないだけで
このスレであなたは新たな語彙を獲得したんだから、是非使っていって欲しい
と僕は思うわけです
0467仕様書無しさん
垢版 |
2018/04/22(日) 18:48:37.69
>>462
IT社会だから辞書はコンピュータから検索できるようにしていて
そのUIは独自のもので秘匿が原則であることが記されているから
お示しすることはできないというわけです
0472仕様書無しさん
垢版 |
2018/04/22(日) 18:56:12.13
>>468
仮にそれが嘘だとしても、意味明瞭が「意味がはっきりわかること」
に変わりはないんだからね!?

>>469
仮にそれが古臭いとしても意味明瞭が「意味がはっきりわかること」
を意味することに異論はないでしょ?
0474仕様書無しさん
垢版 |
2018/04/22(日) 19:02:06.16
本当はわかってるくせにわからない振りをしてるだけですよね
意味明瞭と言って本当にその言葉の意味がわからない人っていますか?
そんな人が本当に居るとしたら、その人はオレオレ用語の意味さえわかりませんよ
言葉は単語のつながりですし、単語の元々の意味が変わることなんてありません
元の単語の意味がつながるだけです

無知な人はわからないわからないと言っていれば良いので
議論において最強と言われることがありますが
そういうことで最強の名を手中に収めて満足できますか?
僕はできませんね、なぜならば無知なだけだからです
ものを知らないだけだからです、知らないことを武器に
偉そうに振る舞って相手を黙らせて何が嬉しいのでしょうか
自分の無知に気づかない本当のバカですよ
0477仕様書無しさん
垢版 |
2018/04/22(日) 19:06:34.92
>>476
短文は知恵遅れ
みたいな

やめましょうよそういう煽り合いみたいなの
知性ある議論がしたいです
0480仕様書無しさん
垢版 |
2018/04/22(日) 19:24:43.46
「意味明瞭」で検索しても、一件もヒットしないんだが?
0481仕様書無しさん
垢版 |
2018/04/22(日) 19:29:17.78
>>475
ソース?

大東亜会議の真実: アジアの解放と独立を目指して - Google ブック検索結果
https://books.google.co.jp/books?isbn=4569634958
> 東條も土壇場になると、日本の古歌、諺を引用する癖があり、いずれの場合も意味明瞭でない。

上司になってはいけない人たち - Google ブック検索結果
https://books.google.co.jp/books?isbn=4569819184
>一塁離明瞭かつ意味明瞭な指示を心がけることによって、
>自分は何を知っていて何を知っていないかが明らかになる。

瀬戸内−道後殺人事件 - Google ブック検索結果
https://books.google.co.jp/books?id=K_n6DAAAQBAJ
> 塔本によって、広島のどこかで麻薬漬けにされているという意味なんでしょうか」
> 「最初の書き込みは意味明瞭だが、問題はあとのほうだ」

経営理念 - TEC予備校
https://tec-yobiko.co.jp ? TECの取り組み
> つまり、あくまで言語明瞭・意味明瞭に徹した世界なのです。言うまでもなく、
> その後の人生において生徒達も、“言語明瞭・意味不明”な話術を身につけていく
> 可能性はありますが、私たちの教室ではその技術を教えることも利用を推奨することもありません。
> 「言語明瞭・意味明瞭」一点張りです。

出版物のご案内 - 株式会社ビジネスサポート
www.bizsupport.co.jp/book.html
> シートI 意味明瞭化シート

災害医療センター がん疼痛相談外来 患者情報提供書 - 独立行政法人 ...
www.nho-dmc.jp/treatment/department/pdf/gantoutuujyouhou2017.pdf
> コミュニケーション □ 0 意味明瞭・複雑な表現. □ 1 意味明瞭・単純な表現.
0484仕様書無しさん
垢版 |
2018/04/22(日) 19:44:20.78
>>319
> コードをいじってばかりのやつは、手段と目的が逆転している。

いや、だからリファクタリングだけやるのは論外って言ってるんだが?
目的は機能追加などの改修で、その手段(の一つ)がリファクタリング

目的を実行する時にこまめにやる手段で、手段そのものが目的になってるような
リファクタリングだけの作業とか大規模リファクタリングはおかしいって
言ってるんだが?
0485仕様書無しさん
垢版 |
2018/04/22(日) 20:14:12.25
結局さ、リファクタリングに文句言ってるように見えて、
実は自分らが普段やっている、いろんな問題が発生している
信頼性の低い行き当たりばったりの改修方法に
文句言ってるだけだろ?

リファクタリングをただの改修と勘違いして、
いつもの自分らを批判してるだけ
0486仕様書無しさん
垢版 |
2018/04/22(日) 21:06:56.52
取り敢えず、リファクタリングの意味は間違えんなよって言いたい。
リファクタリングは、利用者から見て全く振る舞い=挙動が変わらんやつのことだ。シンプルな定義じゃないか。

その性質上、リファクタリングのみで直接利益の上がる作業なんて(ほぼ)ないし、他の修正とセットになることが多い。が、ちゃんとリファクタリングとそれ以外は明確に別れる必要もある。

何も難しくない
0487仕様書無しさん
垢版 |
2018/04/22(日) 21:22:12.90
> が、ちゃんとリファクタリングとそれ以外は明確に別れる必要もある。

どういう意味で言ってるのか知らんが、これを読めばわかると思う

Martin Fowler氏によるリファクタリングのワークフロー
https://www.infoq.com/jp/news/2014/03/fowler-workflows-refactoring

> 機能を追加するとき
> バグを修正するとき
> コードレビューと共に
> Fowler氏は「二つの帽子」の比喩を引きあわせて、プログラミングのタスクをこなす際の、
> 新しい機能の追加(ファンクションの帽子をかぶること)と、
> コードの品質向上(リファクタリングの帽子をかぶること)について説明している。
> そして、「プログラミング中は、頻繁に、ことによると数分毎に2つの帽子を
> 取り替えることになるだろう。しかし、一度にかぶれる帽子はどちらか1つだけだ。」と彼は述べている。

一つのタスクの中でこれらは混ざるが、同時に二つを行うことはない。
その意味で明確に分かれるといってるのならそれはそのとおり

もう少し具体的に言えば、ある機能実装のブランチがあって
そのブランチの中でこれらは混ざることはあるが、コミットは別れている
0488仕様書無しさん
垢版 |
2018/04/22(日) 21:30:13.63
> その性質上、リファクタリングのみで直接利益の上がる作業なんて(ほぼ)ないし、

それはコードのメンテナンス性や可読性を上げても
直接利益に上がらないと言ってるのと同じことで
他の業界で言えば、作業を効率化しても客の数が変わらければ
利益は上がらないと言ってるのと同じことだろう

たしかにそのとおりだが作業を効率化させないと
客の数を増やしたら忙しすぎて破綻するし、
余裕がなければ疲れるだろう。利益ではなく
作業効率に直接影響するのがリファクタリングなんだよ。
0489仕様書無しさん
垢版 |
2018/04/22(日) 21:30:55.90
>>487
あってるあってる。俺もそんなこと言おうとしてた。
もっと言うと、リファクタリングコミットでテスト回してないなら、ただのedit and prayやろって奴やな
0490仕様書無しさん
垢版 |
2018/04/22(日) 21:40:47.76
>>488
効率化云々を否定するつもりはない。効率化するならいいじゃないか。
ただ俺は>>36の通りの主張。
コストの前借りは基本通らねえよ、とだけ。
0491仕様書無しさん
垢版 |
2018/04/22(日) 21:45:35.66
コストの前借りなんて話はしてない。
コードを改修する時の作業に含まれてるんだから

現在のコードの品質(理解しやすさ)によって
改修にどれくらい時間がかかるかは変わるのだから
見積もりには現在のコードの品質を反映させる必要がある。

これは改修でやらなければいけないことで、前借りではない
0492仕様書無しさん
垢版 |
2018/04/22(日) 22:05:59.89
こっちはリファクタリングコストは見積もらないけどな...。
他の作業と置き換えて効率化できるならOK
リファクタリングコストないじゃんとかわけわからないこと言わなきゃいい
0493KAC
垢版 |
2018/04/22(日) 22:10:21.43
>>491
だから、それが間違いだと指摘してるのにまだ気付かないのか?
0494仕様書無しさん
垢版 |
2018/04/22(日) 22:11:13.87
リファクタリングしようがしまいが、
現状のコードが複雑なら解析に時間がかかるので、
あとはその解析結果をコードに反映して次回はもちろんのこと
今回のレビューやエンバグした時の修正を楽にするか
今のままより複雑にして大変にするかの違いなんだよな

そんなに複雑じゃないならリファクタリングも大したことない
すごく複雑なら、それリファクタリングしないと近い内に苦労するよってこと
こまめなリファクタリングが重要
100%完璧にしろなんて言ってない。修正する前よりも良くなっていればいい
0496KAC
垢版 |
2018/04/22(日) 22:23:15.10
>>495
それが事実なら、指摘内容にちゃんと反論しろよ。。。
0497仕様書無しさん
垢版 |
2018/04/22(日) 22:34:53.57
指摘内容に反論してるのが、>>491の内容でしょw

つ〜か「間違ってる」というだけじゃ
それは指摘じゃない。

地球が太陽の周りを回ってるのは間違いなんだ!
って言っても、それは指摘じゃないのと同じこと
0498仕様書無しさん
垢版 |
2018/04/22(日) 22:44:53.89
ちゃんと設計して作成、改修してるのにリファクタリングが必要になるのは何故?
なんかすでにおかしくね?

つまり、リファクタリングっていうのは設計が腐ってるから発生した不具合ってことだよね
0499仕様書無しさん
垢版 |
2018/04/22(日) 22:49:24.59
頭がばぐってる奴のこじつけ論にトラウマがある
最初から最後まで自分の主観から一歩も出ていない
立場をかさにきてるだけ
バットで頭なぐるか車でひき殺すかしたい
0500仕様書無しさん
垢版 |
2018/04/22(日) 22:55:32.38
そこからわからないのか?

客が仕様変更しないとでも思ってるのかな?
状況は刻々変わってるし、やってみなければわからないこともある
20年以上前のアプリがクラウド対応の設計していたらびっくりだわ

ソフトウェアは同じものを作ることはなく、はじめての道ばかりなんだから
軌道修正しながら進むしかないんだよ。
その軌道修正っていうのがリファクタリングでもある。
0501KAC
垢版 |
2018/04/22(日) 22:59:46.88
>>497
はあ、都合の悪いものは見えない人か。
なら、お前の主観ではさぞかしリファクタリングは効率的なんだろうな。
0502仕様書無しさん
垢版 |
2018/04/22(日) 23:02:28.12
「リファクタリングは効率的」とは
いわないな。言葉の使い方が変だ

リファクタリングは効果的ならわかるが
0503仕様書無しさん
垢版 |
2018/04/22(日) 23:05:14.75
開発中のコードなのにテストコードのカバレッジを100%してリファクタリングするバカ
0506仕様書無しさん
垢版 |
2018/04/22(日) 23:58:31.24
>>503
テストコードのテスト?
0508仕様書無しさん
垢版 |
2018/04/23(月) 00:12:15.78
後出しで変化した状況に対応するにはやったほうがいいこともある

ふくらんだクラスを分割して平行作業したり
後から出てきた概念と名前を調整したり
既存コードに手を入れなくても機能拡張できるようにしたり
0509仕様書無しさん
垢版 |
2018/04/23(月) 00:29:35.44
取り敢えず>>486から>>492まで話が割と繋がってるんだから、そこから結論出せそうじゃん
0511KAC
垢版 |
2018/04/23(月) 00:49:44.07
>>508
お前さんが「リファクタリングを理解していない」のは既に指摘したが、
まさかそこまで酷いとは驚きだよ。

もう一度リファクタリングとは何か調べてから出直してこい。
0512仕様書無しさん
垢版 |
2018/04/23(月) 01:09:41.41
この程度のことを金にできない奴隷PGたち
よっぽど信頼されていないんだなw
0513仕様書無しさん
垢版 |
2018/04/23(月) 01:34:52.95
>>498>>507
基本的にYAGNIでKISSだから。
機能追加する時初めてインターフェースを切り出したり、関数の所在を変えたりする場合も少なくない。

>>500
少なくとも20年前云々は、例として適切でない。
リファクタリング文化がある98年制のソースを触ったことなどない。

>>502
言葉そのものでなく、>>488>>490の流れを受けての文脈。つまり(トータルコストを見て)効率的かどうか。という事。
0514仕様書無しさん
垢版 |
2018/04/23(月) 02:17:31.75
日本の場合はリファクタリングではなく、システムを作り替えるタイミングがリファクタリングにあたる。

外国人は新しいバグを埋め込んだり、仕様が変わってしまっても気にしない文化だから、日本人の感覚とは合わない。
0517仕様書無しさん
垢版 |
2018/04/23(月) 07:49:11.35
リファクタ箇所が限定されてりゃ少量のテストでカバーできるだろ
0518仕様書無しさん
垢版 |
2018/04/23(月) 08:18:26.16
>>517
それは仕様がすべて文章化されていればな
実際はそんなこと不可能だし
変更した以上デグレは覚悟しなければならない
0519仕様書無しさん
垢版 |
2018/04/23(月) 09:45:42.62
>>514
> 日本の場合はリファクタリングではなく、システムを作り替えるタイミングがリファクタリングにあたる。

それは仕様がすべて文章化されていればな
実際はそんなこと不可能だし
変更した以上デグレは覚悟しなければならない
0521仕様書無しさん
垢版 |
2018/04/23(月) 09:54:57.20
>>514
一瞬システムリプレースの事だと勘違いするから、改修とか修正って単語使って欲しい

んで、何度も言うように、少なくともリファクタリングの時点でテストはされるし、バグがリファクタリング起因でない事は(メモリ起因やテスト自体の不備を除けば)確実だ、としておく。
なんで、外国人、日本人の下りは何かがおかしい
0522仕様書無しさん
垢版 |
2018/04/23(月) 10:53:40.38
仮にソースが仕様であるならば、バグは1つもないことになる
0523仕様書無しさん
垢版 |
2018/04/23(月) 12:08:46.41
関数の中のロジックの一部を他の関数に切り出して、カバレッジ100%のユニットテストで元のテストの
外部的振る舞いが変わってないことを確認して満足してた奴がリファクタリング起因の障害を発生させてたわw
0524仕様書無しさん
垢版 |
2018/04/23(月) 13:27:15.16
テストコード自体の不備に関してはどうしようもないからな
ただそれに関しちゃ、手動テストでも同じことが言えるからどっちもどっち。
0525仕様書無しさん
垢版 |
2018/04/23(月) 14:56:45.98
>>524
手動でもテストコードはあるんだが?
0526仕様書無しさん
垢版 |
2018/04/23(月) 17:34:25.51
リファクタリングしなければ不具合は発生しない
0527仕様書無しさん
垢版 |
2018/04/23(月) 19:31:15.43
ここまで技術的な話題ゼロ
オワットルなジャップ
0528仕様書無しさん
垢版 |
2018/04/23(月) 20:11:50.92
ソフトウエアの問題は
それがどれほど技術的に見えようとも
結局は人間の問題である

と偉い人が言ってた
0529仕様書無しさん
垢版 |
2018/04/23(月) 21:31:15.36
コードがださいからリファクタしたい
気が滅入る
0530仕様書無しさん
垢版 |
2018/04/23(月) 21:37:25.89
>>523
> 外部的振る舞いが変わってないことを確認して満足してた奴がリファクタリング起因の障害を発生させてたわw

それ普通に修正してもバグ入れ込むよね?
0531仕様書無しさん
垢版 |
2018/04/23(月) 21:38:22.86
>>525
> 手動でもテストコードはあるんだが?

なら手動でバグを見つけられなかったことでは?
まあ手動によるテストは信頼性が低いからね
0533仕様書無しさん
垢版 |
2018/04/23(月) 22:01:01.53
結局リファクタの成否は
客を丸め込んでデグレのリスクを飲ませられるかにかかってる気がしてきた

バージョンアップとかスピードアップとかなんかこじつけて
リファクタでデグレたら原因も無理やりそこに倒す
0534仕様書無しさん
垢版 |
2018/04/23(月) 22:09:44.65
その前に正しい知識が必要だけどな。
リファクタリングは効果的、これを開発社側が
正しく理解してないと、現状のコードの問題を
リファクタリングのせいにしてしまう。
0535仕様書無しさん
垢版 |
2018/04/23(月) 22:10:30.68
現状のコードの問題ってのは、例えば
仕様もテストコードもないんだが?とかそういうのなw
0536仕様書無しさん
垢版 |
2018/04/23(月) 22:14:41.53
>>534
正しい知識があったらリファクタがプログラマーが楽するためのものだってばれるじゃないか!
0537仕様書無しさん
垢版 |
2018/04/23(月) 22:16:20.23
開発中なのにユニットテストでプロダクションコードをガチガチに硬直化させるアホ
0538仕様書無しさん
垢版 |
2018/04/23(月) 22:16:42.65
なにか問題でも?
開発側が楽になれば、それは顧客にとってメリットしかないよね?
0539仕様書無しさん
垢版 |
2018/04/23(月) 22:17:49.19
>>537
お前のその「開発中」は何ヶ月あるんだ?

お前の所は各モジュールごとに計画を立てて開発するんじゃなくて
全部いっぺんに作業してしまってるのか?
0540仕様書無しさん
垢版 |
2018/04/23(月) 22:21:41.39
>>539
ユニットテストが壊れない程度のリファクタリング、つまり関数レベルのリファクタリングしかしない人にはわからないかも
0541仕様書無しさん
垢版 |
2018/04/23(月) 22:24:43.47
>>540
なんでユニットテストを修正してはいけないと思ってるんだ?

リファクタリングでユニットテスト修正するだろ。
というだけじゃ意味が分からんのだろうな
テストは修正しないって言ったじゃないですか!って言いそうw


リファクタリングはテストに通るように修正するのであって、
それさえ守れば、テスト自体の修正もする。
テストのリファクタリングなんて言葉もある。

説明がほしいか?
0542仕様書無しさん
垢版 |
2018/04/23(月) 22:26:59.68
まあここらへんだな。お前がユニットテストを壊さなきゃできないと
勘違いしているリファクタリングだ

新装版 リファクタリング 既存のコードを安全に改善する
http://shop.ohmsha.co.jp/shopdetail/000000003881/

第6章 メソッドの構成
メソッドの抽出
メソッドのインライン化
一時変数のインライン化
問い合せによる一時変数の置き換え
説明用変数の導入
一時変数の分離
パラメータへの代入の除去
メソッドオブジェクトによるメソッドの置き換え
アルゴリズムの取り替え

第7章 オブジェクト間での特性の移動
メソッドの移動
フィールドの移動
クラスの抽出
クラスのインライン化
委譲の隠蔽
仲介人の除去
外部メソッドの導入
局所的拡張の導入
0543仕様書無しさん
垢版 |
2018/04/23(月) 22:31:31.09
まあ簡単に説明するとだな。

「実装クラス」があって

「テストコード」がこの実装クラスを見ている時の
クラスを大きく書き換えるリファクタリングはな


「新しいクラス」を作って、

「実装クラス」の処理を新しいクラスに移譲することで、

「テストコード」から見るインターフェースを
まったく変えること無く、新しいクラスに移行するんだよ


そして「新しいクラス」のテストも書いて(もちろん一部は現在のテストコードを流用していい)
「実装クラス」を参照しているものを、新しいクラスを参照するように書き換え
どこからも使われなくなったら「実装クラス」をそのテストコードもろとも削除


というやり方が、>>542のリファクタリング本に書いている

だから「ユニットテストが壊れない程度のリファクタリング」と言われても
あー、分かってない人ねとしか思わないよ。
0544仕様書無しさん
垢版 |
2018/04/23(月) 22:36:31.59
パズルやりたいなら一人でやってろや
仕事中に遊んでんじゃねえ
0545仕様書無しさん
垢版 |
2018/04/23(月) 22:40:36.13
画面見てキーボード打ってるとゲームして
遊んでるとか思うおっさんがいるらしいなw
0546仕様書無しさん
垢版 |
2018/04/23(月) 22:43:19.23
こんなパズルいらねーんだよ。
バーンと書き換えて、やっちゃって
ミスったらリファクタリングのせいにすればいいだろ


↑こういうやつがリファクタリングのせいにするわけかw

リファクタリングは変更しても問題ない手順で変更することで、
たんなる変更、いつもお前らがやってるような手抜きの
無計画な変更を言い換えた言葉ではありません
0547仕様書無しさん
垢版 |
2018/04/23(月) 22:44:15.53
結局テストコード削除してたらだめじゃん

やってる本人はよくても
他人はリファクタ前と後で変わってないことをどうやって確かめるんだ
0548仕様書無しさん
垢版 |
2018/04/23(月) 22:46:32.34
> 結局テストコード削除してたらだめじゃん

ちゃんとよめや。
移行して使われなくなってから削除するんだよ

お前みたいに、なにも考えずに削除してるんじゃねーよw


> 他人はリファクタ前と後で変わってないことをどうやって確かめるんだ

なんのためにコミットログがあると思ってんの?
あ、もしかしてそこから?

レベルの差が2段階、3段階ありそう・・・
0550仕様書無しさん
垢版 |
2018/04/23(月) 22:54:04.64
>>549
1. リファクタリングする前にはテストがある。
2. 足りなければ追加する
3. テストが通る
4. リファクタリングする(コードを書き換える)
5. リファクタリングしてもテストが通る

それだけじゃん。

まだ補足が必要?

1. さらにコードを書き換える
2. コードを書き換えるうちに(テスト以外で)使われないモジュールが登場する
3. テストは通るがプロダクションコードでは使われてない
4. 使われてないコードは安全に削除できる

いわれないとわからないかなあ?w
0552仕様書無しさん
垢版 |
2018/04/23(月) 22:59:42.12
>>551
他人が一連のリファクタリングの途中を
見るために決まってるじゃん?

なにかわからないところがあったの?
0553仕様書無しさん
垢版 |
2018/04/23(月) 22:59:49.36
>>541
だからさ、「ガチガチに硬直化」って丁寧に言ってやってんじゃん
そりゃリファクタリングの過程でテストも書き換えるよ
ていうか書き換えるに決まってんじゃんアホか
開発中の日々形を変えるコードに対してガチガチのテストを書くなって言ってんだけど、
わかんない?アホだからわかんないの?もうちょっと精進しろよアホ
0554仕様書無しさん
垢版 |
2018/04/23(月) 23:00:16.48
やっぱり話が通じないのは
レベルの差が4段階、5段階あるからか・・・
0555仕様書無しさん
垢版 |
2018/04/23(月) 23:01:48.90
>>553
> だからさ、「ガチガチに硬直化」って丁寧に言ってやってんじゃん

ガチガチに硬直化ってなに?
ファイルをリードオンリーにでもすんのか?
変更できないコードなんてないはずだけど?


どうやるのかはしらないが、
お前がガチガチに硬直化させたのなら、
それはお前の責任だよね?
0556仕様書無しさん
垢版 |
2018/04/23(月) 23:01:57.08
リファクタの途中よりリファクタの前と後で結果が変わらないことを保証してほしいんだけど
0557仕様書無しさん
垢版 |
2018/04/23(月) 23:02:23.37
スクラッチでシステム作ったことないんだろうか
リリース済みのコードとそれに対する改修の文脈でばかり語ってるところを見ると、そうなんだろうな
0558仕様書無しさん
垢版 |
2018/04/23(月) 23:02:52.05
>>553
> 開発中の日々形を変えるコードに対してガチガチのテストを書くなって言ってんだけど、

テスト=仕様を元に決まるものなはずだけど、
仕様が日々変わりまくるのか?

ならそっちが問題だなw
0559仕様書無しさん
垢版 |
2018/04/23(月) 23:03:48.02
>>555
経験が浅い人にはわかんないかも
リファクタ本に書かれてる話じゃなくてごめんね
0560仕様書無しさん
垢版 |
2018/04/23(月) 23:05:13.56
>>556
> リファクタの途中よりリファクタの前と後で結果が変わらないことを保証してほしいんだけど

だからリファクタの前=コミットログの修正前
リファクタの後=コミットログの修正後だろ?

リファクタの前のテストコードを変更せずに
リファクタの後でもそのまま通れば
変わってないことが証明できる。




あー、これ↓を言っておかないとダメなんだろうなw
結果が変わってないと証明された後、
使われてないと判明したコードは削除できる
0561仕様書無しさん
垢版 |
2018/04/23(月) 23:05:28.65
>>558
テストはクラスやメソッドの仕様であってシステムの仕様ではありませんが
0562仕様書無しさん
垢版 |
2018/04/23(月) 23:05:53.43
おまいがリファクタして部分的な仕様を変えまくってんじゃん

そのうえで全体的な仕様が変わってないことを保証しないといけないわけだが
0563仕様書無しさん
垢版 |
2018/04/23(月) 23:06:32.49
>>559
> リファクタ本に書かれてる話じゃなくてごめんね

じゃあどこに書かれてる話なの?
お前の想像の世界の話はいらないからw

どうも「自分がくそったれなやり方してます。
くそったれなやり方には使えないんですけど?」
って言ってるようにしか見えない。
お前のくそったれなやり方の問題だろとしか
0565仕様書無しさん
垢版 |
2018/04/23(月) 23:07:05.91
>>561
> テストはクラスやメソッドの仕様であってシステムの仕様ではありませんが

だから?
システムの仕様じゃなくても、クラスやメソッドの仕様でしょう?
0566仕様書無しさん
垢版 |
2018/04/23(月) 23:08:13.58
>>562
> おまいがリファクタして部分的な仕様を変えまくってんじゃん

変えてないよ?

日々テスト変えなきゃならないどこかの誰かさんと違って、
テストは基本安定している。

テストコードを変えない状態でコードを書き換えてるので
リファクタしても仕様はまったく変わらない
0567仕様書無しさん
垢版 |
2018/04/23(月) 23:08:14.72
日々コードの形が変わっていくのをイメージできない初心者はIDDDでも読んでみたらー
0568仕様書無しさん
垢版 |
2018/04/23(月) 23:10:19.92
もしかしてプライベートメソッドのテストをしてるとかかな?w
それユニットテストじゃない

ユニットテストはモジュールのインターフェースのテストだから
変わりまくることはあり得ない。

もしモジュールのインターフェースという概念がなくて、
単に長いから関数にまとめましたみたいな、
なんでかしらないけど、この関数テストしづらいです。
なんてことをしてるのならそいつの問題
0570仕様書無しさん
垢版 |
2018/04/23(月) 23:12:22.55
具体的にどんなコードとどんなテストをかいて
ガチガチに固まって、メンテナンスが大変です。
なんて状態になってるのか書いてみたら良いよ。
想像の世界の話じゃないなら書けるはず
0571仕様書無しさん
垢版 |
2018/04/23(月) 23:14:05.70
>>569
外から見た時の動きが変わってなければ良い。
そして外から見た時の動きが変わってないが、
(テストコード以外で)使われていないメソッドを作ることは可能
そしたら使われてないコードは安全に消せる。

こういう話をしてます。
0572仕様書無しさん
垢版 |
2018/04/23(月) 23:18:32.85
>>571
つまり今までの話は
低い階層の処理クラスの単体テストの話で
さらにそれを包含するクラスの単体テストは別途あって
そっちは変更ないと
0573仕様書無しさん
垢版 |
2018/04/23(月) 23:38:30.60
低い階層がなんののか知らんが、
【現在のクラス】をリファクタリングするとき

「新しいクラス」

【現在のクラス】←「その他のクラス」←「その他のクラスのテストコード」

「現在のクラスのテストコード」


こういう階層の時、「現在のクラスのテストコード」はそのままに、
「新しいクラス」に処理を移動していくことはできるだろ?
(移動だけじゃなくて新しく作ってもいいけど)

リファクタリングするのは【現在のクラス】だけ
「現在のクラスのテストコード」は書き換えない
【現在のクラス】を利用している「その他のクラス」も書き換えない
(当然「その他のクラスのテストコード」も)


コードの修正をすすめると【現在のクラス】は「新しいクラス」への移譲コードだけになる。

また「その他のクラス」は「新しいクラス」を参照するようにする。
「その他のクラスのテストコード」の修正はしないから、変わってないことは保証できる。
最終的に【現在のクラス】を「その他のクラス」は参照することはなくなる。

そして【現在のクラス】は「現在のクラスのテストコード」以外からは
どこからも使われてないクラスになるので安全に削除できる

これが関数レベルではない、クラスレベルのリファクタリングのやり方
それは>>542とかの本に書いてある基本だから、ほんと勉強してくれとしか
0574仕様書無しさん
垢版 |
2018/04/23(月) 23:43:44.16
一応言っておくけど、これは、クラス根本的に
変えてしまうほどのリファクタリングの手順

メソッド一個だけとかならここまでやる必要はない。
その場合は、メソッド単体で、他のメソッドの委譲したりして
該当のメソッドを使われてない状態にしてから削除する
0575仕様書無しさん
垢版 |
2018/04/23(月) 23:58:55.58
下位クラスの結果も検証するように緻密に単体テスト作られてればいいが

ユニットテストするときなんて下位クラスはモックになってること多い
その場合参照するクラス変わったらモック設定書き換えにゃならん
0576仕様書無しさん
垢版 |
2018/04/24(火) 00:11:44.40
既にあるロジックをどこか別の場所に移動する以外にネタねえのかよw
0578仕様書無しさん
垢版 |
2018/04/24(火) 00:18:30.70
>>561
テストにもいろんなレベルがあることに考えが至らない奴隷コーダー
0579仕様書無しさん
垢版 |
2018/04/24(火) 00:24:31.48
結局単体テストは個人のテスト証跡以上の意味はないのだろうか
0581仕様書無しさん
垢版 |
2018/04/24(火) 06:04:21.71
だから
リファクタリングなんぞ不要

数年後には業務変化の見直しと現在業務の確認のために、システムをまるごと作り直すから
0584仕様書無しさん
垢版 |
2018/04/24(火) 08:52:53.82
定期的なリプレースでは使う言語が変わる可能性が結構高い確率である
こまめにリファクタリングしたら大損だよ
0585仕様書無しさん
垢版 |
2018/04/24(火) 09:48:46.57
>>584
こまめにリファクタリングってことは、リファクタリング後の修正がこまめに発生してるんだから、そこでリファクタリングコストの半分以上は回収できてると思うの
0586仕様書無しさん
垢版 |
2018/04/24(火) 11:20:18.41
常に機能追加や改修しているようなソフトウェアであればリファクタリングは有効
一度作ったらあまり改修しないようなソフトウェアであればリファクタリングのデメリットが目立つ

つまり、アマゾンドットコムみたいに常に機能追加や改修が行われる投資対象であればリファクタリングで機動力を確保するのは理にかなってる
逆に家電に代表されるような組み込み系、もしくは制御系のような、機能追加や改修の頻度が低いものであればリファクタリングする意味は相対的に小さい

お金をつぎ込めばつぎ込むほどリターンがあるのであれば、CIの中にリファクタリングを入れてしまえばいいだろう
リファクタリングの結果がすぐに出やすく、デメリットであるリファクタリング起因の不具合についても
改修が多ければ多いほど、リファクタリング起因の不具合減産と相殺されるからだ

リファクタリングの問題でやはり難しいのは改修頻度が低く失敗が許されない分野だ
これらの分野は製造工数とテスト工数の比でいうとテスト工数の割合が大きい
つまり、リファクタリングによって過大なテスト工数が必要となってしまい、リファクタリングのメリットが吹き飛んでしまう
しかしながら動いている箇所はいじらない方針もいつまでも続くわけじゃない
いつかのタイミングで全面リプレースするか、リファクタリング(もはや資料もなく知っている人もいない)を行うことになる
0587仕様書無しさん
垢版 |
2018/04/24(火) 12:15:51.10
リファクタリングによって設計が改善されたと思ってるのはやった本人だけとかありがち
0588仕様書無しさん
垢版 |
2018/04/24(火) 13:06:03.44
>>583
うちもそうだよ?
課レベルのシステム、部レベルのシステム、社レベルのシステム
があって、それぞれの長が変わったらシステムの仕様変更が最初の長の仕事になってる。
システムの見直しと再設計って、その部署の現在運用を把握するのに最適という理由で。
0589仕様書無しさん
垢版 |
2018/04/24(火) 13:34:56.47
それはそのシステムで業務効率化はされてるんか...?
もはやマニュアルってレベルだろそれ
エンジニアしか理解できない仕事のマニュアル。
0590仕様書無しさん
垢版 |
2018/04/24(火) 13:49:15.67
まず業務があってシステムを作るべきか ※日本風
システムのあわせて業務を再構築するべきか ※欧米風

どっちがいいんだろうね
0591仕様書無しさん
垢版 |
2018/04/24(火) 14:48:59.76
>>590
欧米は、システムに最初から経営方針や業務設計を盛り込んでるだけだよ?
日本と欧米に差はない。
あるのは、システム開発を速攻で内製で仕上げているか否か。
0593仕様書無しさん
垢版 |
2018/04/24(火) 18:11:05.66
>>592
セブンミール時代からたまに使ってるけど、たしかに使いづらくなった。
けど、冷静に考えると。今のレベルのシステムを一応作れたなら。元々のシステムも実装できる。

運用方針を新システム化した際に「顧客のニーズ」を取り入れるために店長に聞いたら。
「店長のニーズ」を取り入れちゃったんだろうwww

ただ、「店長のニーズ」も旧システムで現実に起こってる問題の結果で、
さらに、現在、店舗自体が人手不足に陥ってるから配達要員、商品供給ライン等で
旧システムであっても実際には様々な遅延等々があったんだろう。

おそらく、システムの使いづらさの原因は、まさかのアナログな「現場の配達に要する人手不足」だと思うわw
0594KAC
垢版 |
2018/04/24(火) 18:20:09.23
>>590
本来なら日本風がいいんだけど、
パッケージ売りの欧米風の方が格段に安いから。
0595仕様書無しさん
垢版 |
2018/04/24(火) 18:32:53.31
リリース前のコードまで
ガチガチに変更管理してる
現場ってあんの?
0598KAC
垢版 |
2018/04/24(火) 19:17:09.86
>>595
リリース前も後も管理するのは当たり前
0599KAC
垢版 |
2018/04/24(火) 19:19:03.12
>>597
お前さんが試験したこと無いのはよく分かった
0600仕様書無しさん
垢版 |
2018/04/24(火) 19:22:18.29
ボタン押すだけとか前時代的すぎるwww
今はもうpushするだけの時代だぞ爺さん
0602仕様書無しさん
垢版 |
2018/04/24(火) 20:45:57.41
>>586
> 常に機能追加や改修しているようなソフトウェアであればリファクタリングは有効
> 一度作ったらあまり改修しないようなソフトウェアであればリファクタリングのデメリットが目立つ

やっぱりまだ勘違いしてる。

リファクタリングが、一度作った後に行うものだと、まだ勘違いしている。

一度目であっても、作ってる最中に、こまめにリファクタリングしていくもの
という考えがどうしても理解できないらしい

それとも詳細設計というものがあって、そこに最初から
すべてのクラス、関数、引数がプライベートのものまで
全部網羅されてるとでもいうのか?
0603仕様書無しさん
垢版 |
2018/04/24(火) 20:48:25.79
>>601
> 変更中で清書する前のコードならpushしねえよ

書きかけではなく本当に清書?
清書前でも理解しにくいだけで動くが、
理解しやすくために清書するってこと?

ならそれはリファクタリングに相当するね
もちろんちゃんとした手順でやらないといけないが
0604仕様書無しさん
垢版 |
2018/04/24(火) 20:49:37.09
>>596
> は?折角テスト終わったのに変更すんな

それなら、テストする前にリファクタリングすればいいんだよ
0605仕様書無しさん
垢版 |
2018/04/24(火) 20:52:29.27
>>587
> リファクタリングによって設計が改善されたと思ってるのはやった本人だけとかありがち

そういうレベルの人たちしかいないなら、
コードメトリクスを測定するツールで客観的に
判断したほうがよいだろう。
0606仕様書無しさん
垢版 |
2018/04/24(火) 21:01:28.79
>>602
ちゃんとした手順がなにを指してるか知らんが、ファウラーのリファクタ本だとしたら
リリース前のコードに対してあんなまどろっこしいことせんよ
0607仕様書無しさん
垢版 |
2018/04/24(火) 21:10:16.77
>>605
ツールで測定できるレベル(抽象度的な意味で)じゃ設計の善し悪しは測れないんで
0608仕様書無しさん
垢版 |
2018/04/24(火) 21:15:31.28
>>586
> リファクタリングの問題でやはり難しいのは改修頻度が低く失敗が許されない分野だ

そういう分野で、循環的複雑度100オーバーの関数1000個のソフトウェアを
修正させたらどんなにテストしていたとしても修正のたびにバグ入れると思うよ。
どうやってこの問題を解決する?

何十回、何百回もテストするかい?それこそ過大なテスト工数だよね。
テストを一回やったらバグが全て見つかり一回の修正で全部直る。
修正後の再テストはバグが見つかった所だけでOK。とか思ってないか?



参考 循環的複雑度は
 50以上でテスト不可能 バグ混入確率70%
 75以上でいかなる変更も誤修正を生む バグ混入確率98%
と言われている。10以下にするのが普通


とここまで書いて思ったが、どんなコードが良いコードなのかわからない人は
実際にダメなコードの複雑度がどれくらいなのか具体的な数値を示さないと
わからないだろうな。どこかにサンプルないだろうか
0609仕様書無しさん
垢版 |
2018/04/24(火) 21:16:39.31
>>607
> ツールで測定できるレベル(抽象度的な意味で)じゃ設計の善し悪しは測れないんで

だから自分たちで、判断できないレベルの人ばっかりなところだって、
ツールは測定するため物で、ちゃんと測定できますってw

完璧なものはわからないかもしれないけど、少なくともツールで
大きくだめだって言われた所は、マジでだめ
0610仕様書無しさん
垢版 |
2018/04/24(火) 21:17:39.58
>>606
> リリース前のコードに対してあんなまどろっこしいことせんよ

しないから、エンバグするんでしょ?
0611仕様書無しさん
垢版 |
2018/04/24(火) 21:21:24.00
>>609
そういうことじゃないです
ツールには文脈がわからないと言っています
コーディングじゃなくて設計の話です
0612仕様書無しさん
垢版 |
2018/04/24(火) 21:24:58.14
>>610
開発中の話だからエンバグしたっていいんだよ、どうせすぐに検知できるし
開発中のテストと品質のためのテストは目的が違うので
0613仕様書無しさん
垢版 |
2018/04/24(火) 21:26:26.40
リファクタリングとかやっちゃうお前らだと、給料っていくらぐらい?
0614仕様書無しさん
垢版 |
2018/04/24(火) 21:34:10.80
>>602
そうだよ
トップクラスの企業になると詳細設計で全てが完全に定義されててコーディングは規則に従い変換して写すだけ
なのでリファクタリングの出る幕はない
0621仕様書無しさん
垢版 |
2018/04/25(水) 00:01:43.85
トップクラスの企業って言葉で連想するのはメーカー子会社の協力企業あたりだな
GoogleやAmazonを表現するのにトップクラスの企業って言葉じゃ足りない
0624仕様書無しさん
垢版 |
2018/04/25(水) 01:31:18.64
>>602
リリース前のアルファ版未満モック以上版なら、デグレ上等でノリと勢いでガンガン変わってくだろ。
わざわざリファクタリング手順など踏まんで、テスターとペアになって開発した方が良い
0626仕様書無しさん
垢版 |
2018/04/25(水) 08:41:32.66
組織と自分の履歴サーバを別けている
日本のリファクタリングあるある
0627仕様書無しさん
垢版 |
2018/04/25(水) 17:33:16.56
人気グループ「TOKIO」の山口達也メンバーが、自宅マンションの部屋で女子高校生に無理やりキスをするなどの行為をしたとして、警視庁は強制わいせつの疑いで書類送検しました。

全文は以下
https://www3.nhk.or.jp/news/html/20180425/k10011417181000.html
0628KAC
垢版 |
2018/04/25(水) 18:02:35.15
>>626
分けるメリットがなんかあるの?
0632仕様書無しさん
垢版 |
2018/04/25(水) 22:46:40.90
コード読めないからレビューできないんじゃね?w
0633仕様書無しさん
垢版 |
2018/04/25(水) 22:49:39.16
ここで一部の人に衝撃的な事実を言っておきますね。

レビューができるコードっていうのは1関数あたりだいたい10〜20行程度までです。
50行なんて超えたらぜったいにレビューできません。

人の能力の問題じゃなくて、レビューできないコードです。
解析が必要になったら、それはレビューとは言えません。

だから1関数当たり10〜20行になっていなければいけません。
これを超えるものがざらにあるようなプロジェクトは失格です
0634仕様書無しさん
垢版 |
2018/04/25(水) 22:54:58.77
10行って引数の多いメソッドの前準備してるだけで終わるレベル
俺は200行程度まで許容範囲
0635KAC
垢版 |
2018/04/25(水) 22:57:37.78
>>633
レビューできない根拠が
理由にすらなってない訳だが…
0636仕様書無しさん
垢版 |
2018/04/25(水) 23:02:01.36
レビューは通過儀礼だから
コードなんて誰も見てない
見てるのは担当者の活舌
0637仕様書無しさん
垢版 |
2018/04/25(水) 23:02:22.78
Web業務なら少々長くても大丈夫
帳票とかDBとかでっかい構造体にいっこずつ値入れてるだけだから
長くても込み入ってないことおおい

組み込みとかどうだろう
0638仕様書無しさん
垢版 |
2018/04/25(水) 23:03:22.71
>>634
許容とかそういうレベルじゃない。
どんだけヘボならそんな長いコードができるんだ?レベルだよ。
これは本当の話

>>635
マジレビューできないってw
0639仕様書無しさん
垢版 |
2018/04/25(水) 23:03:29.06
関数の行数よりネストの深さとスコープの方が大事
0640仕様書無しさん
垢版 |
2018/04/25(水) 23:07:40.35
>>636
> コードなんて誰も見てない
だろ?
長いコードは読まない。
レビューできないから

>>637
ウェブ系でもありえないな。

ほんとね、一人前のプログラマか、ゴミかどうかは
1関数10〜20が普通って聞いて信じられるかどうかでわかるよ

比較的大規模なウェブアプリの例。みてみろ。コレがレビュー可能なコードってもんだ
https://github.com/gitlabhq/gitlabhq/tree/master/app

50行とか超えてるコードばかり見てる人、↑これみれば、
50行なんて長いコードはレビューできないのが当たり前ってわかるよ。
0641仕様書無しさん
垢版 |
2018/04/25(水) 23:10:26.57
小さなクラスやメソッドにするのはいいことだけど、適切な命名ができるのが大前提
英語が苦手な奴はデタラメな名前をつけるから余計わかりづらくなる
形だけ小さくして満足してるバカが多い
0642仕様書無しさん
垢版 |
2018/04/25(水) 23:12:13.47
>>641
それは当然だけど、50行とか平気で超えてるようなコードを書く人たちに
現実ってものを突きつけたいと思ってね。
0644仕様書無しさん
垢版 |
2018/04/25(水) 23:17:41.01
リファクタリングするとバグがーとか言ってるのは
おそらく50行とか平気で超えてるような所だろう

レベルに大きな差があるから話が通じない。

1関数たったのこれだけしかないから、
この関数が動くかどうかテストするのは簡単なんだ
0646仕様書無しさん
垢版 |
2018/04/25(水) 23:25:40.51
>>645
それを見つけるまで、何ファイル探したかな?
ものすごくレアだってのがわかるだろう。

長いそれであっても50行は超えていない
0647仕様書無しさん
垢版 |
2018/04/25(水) 23:25:41.82
コードの優劣は、そのコードが生み出す経済的価値によって決まる
ただ綺麗なコードより汚くても利益を生むコードの方が価値がある
大して価値のないコードを一生懸命リファクタリングしてる奴には、そんなゴミ捨てて意味のあるコードを書けと言いたいね
0649仕様書無しさん
垢版 |
2018/04/25(水) 23:30:48.77
英検1級レベルに満たない奴はローマ字でコードを書け
0650仕様書無しさん
垢版 |
2018/04/25(水) 23:31:01.06
くり返し言うが、俺が言いたいのは、技術力高い所は
本当にこれぐらいのレベルなんだよ、
ありえない話はしていない。その証拠
0651仕様書無しさん
垢版 |
2018/04/25(水) 23:31:51.26
>>646
そんなに探してない
DBとかHTMLに値入れてるとことか長くなりがちなとこ探したけどなかったんで
helperっていう割とやばめの文字列が目に入ったんで開いたらあった

やっぱり扱うものによる

一番下のやつ50行超えてるぞアウトだアウトだ
https://github.com/gitlabhq/gitlabhq/blob/master/app/helpers/application_settings_helper.rb
0656仕様書無しさん
垢版 |
2018/04/25(水) 23:35:35.10
>>640
でもよ
それって設計書書くの大変じゃない?
200行のメソッドって10個〜20個になんだろ?
クラス図だって10倍か20倍にデカくなんだぞ
トレードオフの問題ちゃうんか?
たくさん仕事してるようで大半がメソッド名決めてるだけみたいな
0657仕様書無しさん
垢版 |
2018/04/25(水) 23:36:38.18
>>652
いや、自分も同じレベルだけど、自分のコードは出せないだろう?
オープンソースで参考にできるもの。

あの関数の短さで大規模なエンタープライズ向けの開発ツールが作れる。
そういう事実がそこにある。
0659仕様書無しさん
垢版 |
2018/04/25(水) 23:37:57.03
>>656
> それって設計書書くの大変じゃない?

設計書書くの大変なんだよ?

ようするに設計書はこのぐらいのものを作って
一人前ってことなんだよ。

普段どれだけ適当な仕事しているかってのを
わかってほしい。それだけのレベルの差がある
0661仕様書無しさん
垢版 |
2018/04/25(水) 23:39:09.20
メソッドの仕様まで設計書に起こす奴って脳死しすぎやろw
0662仕様書無しさん
垢版 |
2018/04/25(水) 23:39:47.86
設計書書くの大変かどうかは知らんが
事実としてあのコードは存在する。

あのコードを作るにはどうすればいいかを考えたほうが良い
0663仕様書無しさん
垢版 |
2018/04/25(水) 23:40:24.20
>>662
そうだな

リファクタする時間をプログラマにくれればいいんじゃないかな?
0664仕様書無しさん
垢版 |
2018/04/25(水) 23:41:06.73
>>660
作れるかどうかという理論上の話ではなく
実際に作られたシステムが、あれだけ関数の長さが短いという事実
0667仕様書無しさん
垢版 |
2018/04/25(水) 23:43:22.49
>>665
コードの奇麗さが価値なら
客からリファクタ用の時間をたっぷりふんだくれるはず
0668仕様書無しさん
垢版 |
2018/04/25(水) 23:47:04.45
>>667
別にいらんよ。コードが綺麗なら
同じ時間でより多くのものが作れる。

言い換えると技術力が高ければ、
同じ時間でより多くのものが作れる
という当たり前の話だ
0669仕様書無しさん
垢版 |
2018/04/25(水) 23:48:23.93
>>667ってなんか発想がおかしくね?
客から作業代をどうやってむしり取ろうかって発想になってる。
0670仕様書無しさん
垢版 |
2018/04/25(水) 23:49:15.19
>>664
Jenkinsは至るところで使われてるけど50行以上のメソッドなんていくらでもある事実
0674仕様書無しさん
垢版 |
2018/04/26(木) 00:03:21.92
>>659
原点回帰が必要だよお前
人間が見てわかりやすい範囲を明らかに逸脱してるだろ
概算で役に立たない
2000行規模のコードでメソッド200個近く作るんだろ
どうやって表現すんの?お前
なんもドキュメント作らない前提じゃないと成り立たない

つっかえねーw
0675仕様書無しさん
垢版 |
2018/04/26(木) 00:05:16.32
われながら途中で投げ出してわかるからと適当に書いた設計書がやばい
自分はわかるがテスターが
どうしよ
0676仕様書無しさん
垢版 |
2018/04/26(木) 00:11:00.24
>>668
当たり前とはつまり自分の思い込みで根拠がないことを指す

このコードだって最初からきれいに書いてちゃっちゃと作ったのか
時間をかけてレビューして整頓したのかどうかなんてわかんないじゃん
0677仕様書無しさん
垢版 |
2018/04/26(木) 00:17:32.88
>>674
> 2000行規模のコードでメソッド200個近く作るんだろ
> どうやって表現すんの?お前

でもさ、コードでは実際にそう表現されてるよ?
そこの矛盾に、君が気づかないといけない
0678仕様書無しさん
垢版 |
2018/04/26(木) 00:20:48.44
面白いのを見つけてきた

【読者参加型企画】2,000行のJavaソースコードを読むのに何分かかりますか?
https://codezine.jp/article/detail/4388

コードレビュー速度 (1時間あたり)

IEEE: IEEE Standard for Software Reviews and Audits(1028-2008) によると
100〜200行(Technical reviews)らしい。

つまり2000行だと10〜20時間、1日〜3日、コードレビューにかかる

いいですか?
2000行にかかるコードレビューの時間です。
0679仕様書無しさん
垢版 |
2018/04/26(木) 00:32:42.36
https://gigazine.net/news/20150918-google-2billion-code/

> 2015年1月時点で、総ファイル数は10億、ソースファイルの数は900万、
> コードは20億行あり、3500万回のコミットがあって、内容は86TBあるとのこと。
> そして、営業日1日に対してのコミット回数は4万5000回。

1ファイルの平均は20億÷900万=222行でした。
2000行規模なら10ファイル程度

俺は妥当なところだねと思うが、
そう思わない人がいる。

そこにレベルの差を感じる
0680仕様書無しさん
垢版 |
2018/04/26(木) 00:34:49.47
トレードオフって言葉を覚えた方がいいよ
この機能を実現するために必要な処理は何?
って聞かれても何も答えられないっしょ?
さらにドキュメントを書かせる現場で君は役に立たない
たった2000行程度で200個もメソッド作るようなカスはどこ行っても
使えねーからオープンソースでも
組んでろよ
0681仕様書無しさん
垢版 |
2018/04/26(木) 00:44:22.87
> この機能を実現するために必要な処理は何?
> って聞かれても何も答えられないっしょ?

「この機能」って?
この機能だけで見積もりできるの?設計できるの?
0682仕様書無しさん
垢版 |
2018/04/26(木) 00:45:19.30
>>678
で、なにが言いたいの?
スレの流れは関数の長さとそのレビューにかかる時間だったけど、その引用のレビュー時間は
関数の長さとどう関係があんの?
まさか、2000行のコードっていうのを、2000行のひとつの関係って解釈した?
0683仕様書無しさん
垢版 |
2018/04/26(木) 00:46:39.82
>>680
2000行なら100メソッドだろ?
何勝手に水増ししてんだw

普通に作れば100個のメソッドなんて普通にできる
1関数10〜20行にしないとテスト不可能
テスト可能にするとだいたいコレぐらいになる。

そこから逆算すれば100個のメソッドは
普通に作ればできる

トレードオフの話をするのであれば、
トレードオフした結果が100個だ


って、やっぱりマジ1関数10〜20なんてありえない
50行超えるのがザラなの? レベルに大きな差があるよ。
自覚だけはしておこう
0684仕様書無しさん
垢版 |
2018/04/26(木) 00:49:24.26
トレードオフって何と何のトレードオフなんだろう?

最初から短い関数で書けばいいと思うけど、
関数を長くすることで、何のメリットがあるの?
0685仕様書無しさん
垢版 |
2018/04/26(木) 00:49:29.64
>>678
そもそもテクニカルレビューってなに?
どういう目的でどういうレビューをしてるかによってかかる時間はいくらでも変わると思うけど、
テクニカルレビューがなんなのかわからないから10〜20時間が長いのか短いのか評価できないんだけど
0686仕様書無しさん
垢版 |
2018/04/26(木) 00:51:12.51
ふつうだのレベルだの漠然としたことしか言わんやっちゃ
0687仕様書無しさん
垢版 |
2018/04/26(木) 00:51:43.19
例えばプロだと間違えずにキーを打つことが高速にできる。

だけど素人だと間違えずにキーを打たなければいけないという
条件をつけると途端にタイプするのが遅くなる。

それと一緒でプロだと普通に作っても関数は10〜20行にできるが
そうでない素人だと頑張らないと達成できない

そう、素人
0690仕様書無しさん
垢版 |
2018/04/26(木) 01:00:43.49
技術的難易度が低いただのCRUDアプリみたいなものしか作れない人は、いかに綺麗にコードを書くかとか
そういう話題でしか技術っぽい話ができないから、ここぞとばかりに語るよな
0691仕様書無しさん
垢版 |
2018/04/26(木) 01:00:54.12
>>683
それって20行換算じゃん
最大行で見積もるなんて心苦しいから10行にしてやったんじゃん

2000行でメソッドが200個できて
20000行で2000個だ
100000行で10000個じゃん

この間やったプロジェクトのコードがそんなもんだったけど
メソッド10000個とか明らかに
茶碗が小さすぎる
おちょこに飯もってるみたいにアンバランスだろ
0692仕様書無しさん
垢版 |
2018/04/26(木) 01:04:35.27
>>689
> わかんないままドヤ顔で引用しちゃったんだな
いや、普通にリンク貼ってるじゃん?
0693仕様書無しさん
垢版 |
2018/04/26(木) 01:06:27.50
>>691
> この間やったプロジェクトのコードがそんなもんだったけど

お? ちょうどいいやん。
何ファイルで何クラスで何行ぐらい?
0694仕様書無しさん
垢版 |
2018/04/26(木) 01:10:21.07
>>693
いいや、コードは100000行でメソッド数は2000ってとこだね
10000とかドキュメント工数単純に5倍になんじゃねーか?
0695仕様書無しさん
垢版 |
2018/04/26(木) 01:14:29.41
そもそも設計書からしてそんなに大量のメソッド作成するように書いてるのか?
設計書に書いた処理とソースの処理を一致させないと説明が面倒だろ
0696仕様書無しさん
垢版 |
2018/04/26(木) 01:15:20.39
>>691
> 100000行で10000個じゃん
数を大きくして、多く見せたいようだけど無駄w

10万行だろ? 1ファイル(=1クラス相当)が200行ぐらいなので
500個もファイルがある。メソッド1万個は1ファイル(クラス)20個のメソッド
これは普通の規模だ

そもそもお前、ちゃんとモジュール化できてないだろ?
役割ごとにちゃんとファイル(クラス)分けろ
0697仕様書無しさん
垢版 |
2018/04/26(木) 01:17:14.11
>>695
> そもそも設計書からしてそんなに大量のメソッド作成するように書いてるのか?

実際にコードはそれぐらいになるんだから、
それに相当するメソッドは誰が作り出してるかってことだよ。

設計書にこの程度の数のメソッドが書いてないなら、
その設計書通りに作ると破綻するということを意味する

きちんとレビューしてテストするためには、
実際にそれだけの小ささのメソッドでなければいけないのだからね
0698仕様書無しさん
垢版 |
2018/04/26(木) 01:25:34.92
実際にコードを書いてる人は、これぐらいの数の関数は作ってるんだよね。

それにたいして、こんなに大量の関数なんて設計できない。
予め想定することなんてできない

っていうのなら、そういうことだよ。
お前らがやってる設計とやらの仕事は、
現場には通用しない仕事だということ

Sヨとか言われてバカにされてるじゃん。
それが事実だってことだよ。
0699仕様書無しさん
垢版 |
2018/04/26(木) 01:39:49.55
さてリファクタリングの話に戻すぞ?

これが実際の優れた開発の現場だから、最初に全部設計して
最初に考えた関数だけで作るなんて不可能なわけさ
関数の数が多すぎる!って叫んでるアイツ見りゃわかるだろ?

でも実際のコードはそれだけの数の関数がある
この差をどうやって埋めるよ?

最初は設計に書いたとおりの形から始める
実装が進んで次第にコードが膨れ上がっていく
テストできなくなってしまうから、再設計が必要
といっても大きなものじゃない。こまめにやる。

これが開発の中に自然に含まれているリファクタリングだ。
リファクタリングは開発に含まれるもので
別の作業として分離してやるもんじゃない。
0700仕様書無しさん
垢版 |
2018/04/26(木) 02:27:16.80
糞コードいつか破綻するのはわかってるのに
そのまま売りまっくて最終的には極悪に肥大したクソコードのリファクタリングしろという
まずその事実を知っていて売り続けた開発部長やら上層の誰かに責任取らせろやハゲが
0701仕様書無しさん
垢版 |
2018/04/26(木) 03:03:40.58
>>699
リファクタリングは「改修」に含まれるものっていう主張はやめたんだねw
視野が狭かったことに気づいてくれて嬉しいよ
0702仕様書無しさん
垢版 |
2018/04/26(木) 03:26:26.13
ん?やめてないよ。開発の中に改修は含まれている
改修をしない開発会社なんてないんだから
0705仕様書無しさん
垢版 |
2018/04/26(木) 09:34:52.67
ソースレベルの設計書とか言ってる奴はまだマ歴1ヶ月なんだから優しくしてやれ
0706仕様書無しさん
垢版 |
2018/04/26(木) 09:51:20.89
つまり

1. テスト可能なメソッドは十分短いものである
2. 設計でそれらを全て洗い出すのは無理

ってことなんだよね

これは重要な大前提では?
0707仕様書無しさん
垢版 |
2018/04/26(木) 09:52:44.36
>>705
世の中には、設計で洗い出した関数しか作らない
作れないプロジェクトがあるらしい

そういうプロジェクトが破綻するのは目に見えてる
0708仕様書無しさん
垢版 |
2018/04/26(木) 10:30:15.01
ソースレベルの設計書ってなに?詳細設計よりもっと細かいやつ?
アセンブラ時代のフローチャートはほぼソースとイコールだったけど
0709仕様書無しさん
垢版 |
2018/04/26(木) 12:27:07.55
>>707
それくらいで破綻しないよ、昔の人の多くはそれでやってたんだから
破綻するなんてのは、誰にでもできるがゆえに参入障壁が低く競争過多な世界で納期に追われてる奴の発想笑
0711仕様書無しさん
垢版 |
2018/04/26(木) 12:57:21.34
設計で関数を洗い出すのはいいんじゃねーの?
ソースは完全にプログラマに任せるスタイルなのか、ある程度は監視するスタイルなのかの差だと思うよ
個人の技量に任せたら関数の切り出しするやつとしないやつで差がですぎてソースが混乱する
0712仕様書無しさん
垢版 |
2018/04/26(木) 15:10:37.16
そこまで細かく詰めるならその場でコードまで書いてコンパイルと簡単なユニットテスト通しちゃえよ
少なくともインターフェースとスタブは書けるだろ
0715KAC
垢版 |
2018/04/26(木) 20:18:39.67
>>712
コードを書かなきゃ必要な関数を洗い出すこともできないのは最近の風潮だよな

大規模なチームで設計するときにも、
各自が関数洗い出したのを持ちよって全体最適化とかしてないだろ?

普及している手法にはメリットやデメリットがあるのは当たり前
色々な開発手法知らないと最善策見つけられんだろ
0716仕様書無しさん
垢版 |
2018/04/26(木) 21:06:08.65
昔に比べりゃ関数作るのはアホみたいに簡単になった
CollectionやらThreadやらStringやら
大体コアになるもんはありものが揃ってるし
0717仕様書無しさん
垢版 |
2018/04/26(木) 21:57:25.51
設計書ってパンチカード時代の名残だぞ
そんなものを未だに盲信してるなんて滑稽だ
0718仕様書無しさん
垢版 |
2018/04/26(木) 22:34:16.48
デシジョンテーブルは書くやろ?
0719仕様書無しさん
垢版 |
2018/04/26(木) 22:43:24.25
>>718
そうやってすぐコード以外のなにかに逃げようとすんなよSEさんよ
0720仕様書無しさん
垢版 |
2018/04/26(木) 22:52:07.11
そらDBからデータを取り出してブラウザに返すだけのアプリに設計書なんていらんわな
0721仕様書無しさん
垢版 |
2018/04/26(木) 22:59:08.51
二人以上で作業するなら電卓アプリでも設計書いるわ
0722仕様書無しさん
垢版 |
2018/04/26(木) 23:20:45.92
>>720
メモリからデータを取り出して画面に表示するだけのアプリばかりでは?
0723仕様書無しさん
垢版 |
2018/04/26(木) 23:44:04.93
DBからデータを取り出してブラウザに返す仕事なんて、専門教育を受けてない文系でもこなしてるという事実
0724仕様書無しさん
垢版 |
2018/04/26(木) 23:45:51.71
リファクタリングの話が盛り上がるのは、文系でも参加できるから
0725仕様書無しさん
垢版 |
2018/04/26(木) 23:52:49.47
文系が参加って、技術的な話での参加じゃないじゃんw
0726仕様書無しさん
垢版 |
2018/04/26(木) 23:57:54.18
>>723
宇宙ロケットのネジだって高卒が締めてるにちがいない
そんな理屈で仕事の難しさがわかるものか
0729仕様書無しさん
垢版 |
2018/04/27(金) 07:24:26.55
エディタ開いてタイプしろよ
そんなことも言われなきゃわからん?
0733仕様書無しさん
垢版 |
2018/04/27(金) 21:57:24.49
リファクタできない無能には9連休なんてないんだろうなww
0734仕様書無しさん
垢版 |
2018/04/27(金) 22:13:06.31
明日からリファクタリングのために9連勤です
この工数がなければ休めたのに
0735仕様書無しさん
垢版 |
2018/04/27(金) 22:20:26.31
ほらな。なんどもリファクタリング単体の作業は間違ってる。
ふつうの開発(改修含む)に含まれているものだ。
と言ってるのに、やっぱり理解できていない
完全に間違いが身にしみてるんだろうな
0736仕様書無しさん
垢版 |
2018/04/27(金) 22:50:04.81
すでに運用中のシステムの保守開発に途中参画して、リファクタリング単体の仕事をやることもありますね。
視野が狭い方には思いもよらないでしょうけど。
0739KAC
垢版 |
2018/04/28(土) 01:49:53.92
>>735
お前さん、純粋なリファクタリングやったこと無いのな。
どおりで作業量とかリスクとか全く理解していない訳だ。
0740仕様書無しさん
垢版 |
2018/04/28(土) 02:04:59.74
純粋なリファクタリング(笑)

どこ出典ですかねそれ
お前の最強の純粋なリファクタリングみしてみろよw
0741KAC
垢版 |
2018/04/28(土) 02:37:47.95
>>740
お前は「リファクタリングを改修と併せてやる」事しか知らないんだろ?
「リファクタリングのみ」の評価知らないのに正しく評価できないだろ。
0742仕様書無しさん
垢版 |
2018/04/28(土) 02:41:55.96
だからどんなもんか試しにみしてみろって言われてんじゃん
0744仕様書無しさん
垢版 |
2018/04/28(土) 07:14:45.24
改修準備
調査分析
自動テスト作成
負債返済
利便性向上

少なくともこの5種のリファクタリングを日常的に行う
改修前のリファクタリングしか知らないならまだまだだね
0745仕様書無しさん
垢版 |
2018/04/28(土) 07:16:05.03
改修前のリファクタリングは純粋なリファクタリングなんだが爺さんにはわからないかな
0746仕様書無しさん
垢版 |
2018/04/28(土) 13:16:55.76
機能追加とかデバッグの時に
リファクタリングしちゃだめよ
0749仕様書無しさん
垢版 |
2018/04/28(土) 16:36:26.14
事実の再構築、それが本来の純粋なリファクタ

たとえばガス室はなかったとか
強制連行でなく移民だとか
そういうことを言うとリファクタだと侮蔑的レッテルを張られ非難された

あんまり面倒なのでえらい人が別の意味で単語を上書きすることにした

そのあおりをくらってIT従事者は楽しいが不毛な作業に邁進している
0751仕様書無しさん
垢版 |
2018/04/30(月) 00:19:13.47
少し話が変わるが、実装と単体テス
ト(自動化)って同時に行って、工数も含めるよな?
自動化するのに別途工数くださいって言われるんだが・・・
こっちとしてはバッファ含んでも余裕ある日数でお願いしているのに
工数が無いって言うくせに遅刻は半分くらいするし、たばこプカプカで手を動かさない
首切りたい。
0752仕様書無しさん
垢版 |
2018/04/30(月) 00:29:57.65
現場のマネジメント次第でしょ
それどうするか決めるのおまえの仕事じゃねーか

そいつは工数が必要だって言ってるんだからいるんだろ
いくらコーディングだけなら余裕のある日数っつったって
最初お前の頭になかったんなら、全体的な工数がどうなるかは見直すしかない

行けるはずだから頑張れっていうかちょっと工数伸ばすか管理見直すか決断しろ
おまえがやるべきことだ
0753仕様書無しさん
垢版 |
2018/04/30(月) 00:30:23.53
>>751
契約ではどうなっているの?
請負の成果物になければんなもんつくんねーよ
0754仕様書無しさん
垢版 |
2018/04/30(月) 00:45:24.35
ちなみに自分とこの現場の経験でいうと
単体テスト仕様書はコーディングの1.5倍、
ユニットテストは3倍ぐらい工数かかります

ご愁傷様
0755仕様書無しさん
垢版 |
2018/04/30(月) 06:17:53.95
そんな3倍もかからんよ
せいぜい5割り増し程度
自動テスト書くとエビ撮りはもちろん実験やデバッグが爆速になるから総合するとむしろ工数が減る
0757仕様書無しさん
垢版 |
2018/04/30(月) 08:34:15.52
>>755
まあキチンとやってればそんなもんだね。
ただし、禄に設計されてない(抜け漏れ、重複、矛盾多数)プロジェクトだと、テスト時に発覚ーーー>設計修正工数認めない!ーーー>テストケースが歪なのを何とかしようと無駄な作業、で数倍に膨らんだりするが。
0759仕様書無しさん
垢版 |
2018/04/30(月) 08:42:49.78
>>757
テストしっかり書いたから抜け漏れに気が付いた
気がついてよかったじゃん
悪いのは静的解析もテストもしないで設計して抜け漏れ発生させた設計チームだろ?
だから設計書は役立たずのゴミなんだよな
0760仕様書無しさん
垢版 |
2018/04/30(月) 09:32:29.73
>こっちとしてはバッファ含んでも余裕ある日数でお願いしているのに

この言い草にやばいSEのにおいがしてトラウマが刺激された

自分の作業の考慮抜けを無視したり、いらない仕事山ほど詰め込んだ挙句に結果工期伸びてるのに
この認識を修正できずに
「案だけ余裕あったのに何で間に合わないの?」みたいなこと言ってくる奴の多いこと…
0762仕様書無しさん
垢版 |
2018/04/30(月) 11:12:10.98
バカ10人の首切ってスーパープログラマを1人雇ったほうが生産性高い
0763仕様書無しさん
垢版 |
2018/04/30(月) 11:17:42.25
バカ10人集めたらできるような仕事の生産性をちょぴりあげるために
スーパープログラマを投入されてたまるか
0764仕様書無しさん
垢版 |
2018/04/30(月) 11:29:56.67
カスみたいなCRUDを高速で量産するスーパープログラマとはw
0765仕様書無しさん
垢版 |
2018/04/30(月) 11:31:28.59
スーパープログラマにカスPGの仕事をやらせたらめんどくさがって自動化しちゃうから実質10倍どころじゃない
万倍以上の差が出る
0766仕様書無しさん
垢版 |
2018/04/30(月) 12:05:57.16
>>765
500人月を1人日か
そんな事例知らないくせに、ぼくのかんがえたさいちょうのすーぱーぷろぐらま語ってドヤるとかリアル中学生かよ
0767仕様書無しさん
垢版 |
2018/04/30(月) 12:10:21.19
まあでも俺がクソプログラムを100量産してる間に10リファクタリングしたとこで意味をなさないんだがなw
0768仕様書無しさん
垢版 |
2018/04/30(月) 12:17:18.95
そのクソプログラム100個相当のものを
プログラム10個で作り上げるのがスーパープログラマ
当然リファクタリングした結果もこうなる
0769仕様書無しさん
垢版 |
2018/04/30(月) 12:18:09.57
そして文の意味を理解できないアホが俺様リファクタリングしてむちゃくちゃにして動かなくするとw
0770仕様書無しさん
垢版 |
2018/04/30(月) 12:20:25.30
お前らが100000人いてもlinuxは作れなかった
つまりそういうこと
0773仕様書無しさん
垢版 |
2018/04/30(月) 13:58:00.43
付加価値ゼロのコードを
何万行書こうとも
付加価値ゼロだからね
0775仕様書無しさん
垢版 |
2018/04/30(月) 15:28:00.84
>>763
単価安いのを10人集めれば出来る!
↑ダメ管理者が陥りがちな妄想の典型。
0776仕様書無しさん
垢版 |
2018/04/30(月) 16:04:59.12
できなかった場合:奴隷がバカすぎるので金出さない
できた場合:こんなバカでもできる仕事に金出さない

奴隷がバカだから金出さないのは大前提
0777仕様書無しさん
垢版 |
2018/04/30(月) 19:09:11.03
>>775
おまえも単価安い十天王の一角やんか
0778仕様書無しさん
垢版 |
2018/04/30(月) 19:15:18.91
お前ら自分のことは棚にあげてるけど、スーパープログラマから見たらバカとお前らのレベル差なんて誤差みたいなもんやろ
0779仕様書無しさん
垢版 |
2018/04/30(月) 19:27:55.44
誤差ちゃうわw
クッキリとバカやでおまえらなんかw
0780仕様書無しさん
垢版 |
2018/04/30(月) 19:36:10.50
>>778
だったら高いほうに合わせて金よこせ
馬鹿に合わせて全員の給料下げようとするんじゃねえ

ふざけんな畜生
0781仕様書無しさん
垢版 |
2018/04/30(月) 19:52:13.54
給与が低いと思ったらサボる
プロジェクトが失敗したって高い給与貰ってるPMさんが責任取ってくれる
プログラマみんなでこれを徹底する
これしかないんだよいい加減理解しろよ
0783仕様書無しさん
垢版 |
2018/04/30(月) 20:09:40.59
>>777
すぐ論点ずらしに走るのもダメ管理者の特徴。
まあ本人は上手いこと言ってやっだニダwとか思ってるのが痛いけど。
0784仕様書無しさん
垢版 |
2018/04/30(月) 20:15:53.56
>>783
どまんなかの直球やぞ?マジにずれて見えるんか?
打たれすぎて脳ミソ液状化しとるやんおまえw
0785仕様書無しさん
垢版 |
2018/04/30(月) 20:34:48.35
>>780
成果に見合った代価を得るのもスキルだぞ
プログラミングがろくにできない奴がバカプログラマだとしたら、金の話ができないのはバカリーマンww
0786仕様書無しさん
垢版 |
2018/04/30(月) 20:59:59.71
年収300万の人間に何を期待しているんだ?
適当にやらせていただきます
0787仕様書無しさん
垢版 |
2018/04/30(月) 21:02:36.56
まあ実際には何も期待されてない
ただの作業員だわな
0788仕様書無しさん
垢版 |
2018/04/30(月) 21:21:26.19
そうそう
適当でいいんだよ
上が全部責任取ってくれる
0792仕様書無しさん
垢版 |
2018/04/30(月) 23:48:16.67
ロケット制御みたいな枯れた分野では予測可能性が重要で創造性は必要が無いってことね
0793仕様書無しさん
垢版 |
2018/05/01(火) 00:24:51.63
自分の嗜好と現実がぶつかったら現実のほうを否定するタイプだな
0794仕様書無しさん
垢版 |
2018/05/01(火) 00:29:43.04
          \   r'´ ̄ ̄ ̄    ̄ ̄ ̄`、::.   ___
   l} 、::       \ヘ,___,_ ______/::.__|    .|___________
   |l  \::      | |             |、:..  |[], _ .|:[ニ]:::::
   |l'-,、イ\:   | |    ∧,,,∧ .   |::..   ヘ ̄ ̄,/:::(__)::
   |l  ´ヽ,ノ:   | |   (´・ω・`)    ,l、:::     ̄ ̄::::::::::::::::
   |l    | :|    | |,r'",´ ̄ ̄ ̄ ̄ ̄`ヽ、l:::::
   |l.,\\| :|    | ,'        :::::...  ..::ll::::    そうだ
   |l    | :|    | |         :::::::... . .:::|l::::   これは夢なんだ
   |l__,,| :|    | |         ::::....  ..:::|l::::    ぼくは今、夢を見ているんだ
   |l ̄`~~| :|    | |             |l::::   目が覚めたとき、
   |l    | :|    | |             |l::::   ぼくはまだ12歳
   |l    | :|    | |   ''"´         |l::::   起きたらラジオ体操に行って、
   |l \\[]:|    | |              |l::::   朝ご飯を食べて、涼しい午前中にスイカを食べながら宿題して、
   |l   ィ'´~ヽ  | |           ``'   |l::::   午後から友達とプールにいっておもいっきり遊ぶんだ・・・
   |l-''´ヽ,/::   | |   ''"´         |l::::   
   |l  /::      | \,'´____..:::::::::::::::_`l__,イ::::
0796仕様書無しさん
垢版 |
2018/05/01(火) 01:05:01.27
戻りたいと思えるような過去すらない
何もかも足りなすぎる
0800仕様書無しさん
垢版 |
2018/05/01(火) 17:07:58.55
テストなんて不要だ
不具合はすぐにユーザーが見つけてくれる
新しい価値の想像、そしてスピード感こそすべて
0801仕様書無しさん
垢版 |
2018/05/01(火) 17:16:31.18
トイレでケツを拭く時間も無駄だとか言いそうなヤツですね
実際拭いてないとかいそうで困る
0805仕様書無しさん
垢版 |
2018/05/06(日) 21:12:14.93
トイレと書斎を融合すれば座りっぱなしでいいからケツ拭かなくても無問題
0806仕様書無しさん
垢版 |
2018/05/08(火) 20:29:09.78
MSって2005年にvs無償化したのを最後に、何も革新的なもの打ち出せてないよね。
0807仕様書無しさん
垢版 |
2018/05/08(火) 20:34:33.22
それは単にお前が革新的だと認めたくないだけじゃないの?
0808仕様書無しさん
垢版 |
2018/05/08(火) 21:20:16.03
俺のパソコン買ったはずなのに
実際にはマイクロソフトが好きなようにいじくりまわす
0809仕様書無しさん
垢版 |
2018/05/08(火) 21:28:59.63
C#ほど攻守において高い次元でバランスのとれた言語は他に存在しない
0811仕様書無しさん
垢版 |
2018/05/09(水) 01:19:15.28
まったまった、マジでMSが最前線を開拓した技術やサービスって、成功したのは割とないやろ
基本成功したやつをパクって金と物量でシェアもぎ取る感じやん
0813仕様書無しさん
垢版 |
2018/05/09(水) 02:54:34.82
>>811
お前の言う最前線ってなんだ?
成功したもの=最前線じゃないんだが?

どうせアップル信者だろうからそれで例えると
MacやiPhoneに最前線のものなど存在しない
どんなものでも成功できなかった最前線が別にある
0814仕様書無しさん
垢版 |
2018/05/09(水) 12:14:43.48
最前線なのに過去形とゆう矛盾wバカw
0816仕様書無しさん
垢版 |
2018/05/09(水) 15:53:49.25
最前線である事は
十分条件であるが
必要条件ではない
0817仕様書無しさん
垢版 |
2018/05/09(水) 15:56:42.93
焦点は最前線をパクったのは誰かってことだろう?
0818仕様書無しさん
垢版 |
2018/05/10(木) 07:35:15.76
タダでOSを配りつづける見返りに
相手のコンピューターを実質自分のものにして
個人情報を収集して国家に横流しし
見返りに便宜を図ってもらうことで会社が存続する

先鋭的ビジネスモデルの開発に成功した
0820仕様書無しさん
垢版 |
2018/05/10(木) 11:10:17.56
>>806
サーフェス
アジュール
ウィンドウズモバイル
マウス復刻
Xbox
Windows10
TypeScript
VScode
VSのターゲットOS拡大
オフィス製品の料金体系
オフィスオンライン
SQLServerがいい感じになってきた

ほら、いろいろやってるじゃん
0821仕様書無しさん
垢版 |
2018/05/10(木) 11:12:31.49
>>811
程度問題でもあるけど
アップルやグーグルもほとんどそうだぞ
自動運転だって1970年代には日本は研究はじめてるし
0822仕様書無しさん
垢版 |
2018/05/11(金) 00:03:49.96
クール

革新的かつ成功
typescript

革新的だが失敗
Surface→肝心のRTは失敗
Windowsモバイル→何故か失敗

成功したが、フォロアーとか競合とか繋いだだけ
Xbox
VSCode
VSターゲットOS(cordova、Xcode連携)
office365
office onlime

革新的でもなく、失敗
VSターゲットOS(xamarin系)

ダサい

SQLserver、officeの料金体系とマウス復刻はわからん。なんの話題だろう
0823仕様書無しさん
垢版 |
2018/05/11(金) 00:10:59.36
なんだかんだ言ってVisual Studioは一番快適なIDEでしょ
0824仕様書無しさん
垢版 |
2018/05/11(金) 00:15:38.04
VScodeは神(拡張にもない機能は他エディタと併用)
VS2017もUnityをC#でやるなら神
それは否定しようがない
0826仕様書無しさん
垢版 |
2018/05/11(金) 01:07:44.54
>>825
Android開発するときは使ってるよ
その上でVisual Studioの方が優れてると思うね
0827仕様書無しさん
垢版 |
2018/05/12(土) 00:25:57.46
IntelliJの良さがわからない
VScodeもVSに比べたらカス
スペック低いだけじゃないの?
0828仕様書無しさん
垢版 |
2018/05/12(土) 09:34:52.77
VSCodeはエディタと他システムが疎結合であるという点が本家VSより優れている
OSSのようにマルチプラットフォームで作業したい場合
Web系のように多彩な外部ツールを柔軟に組み合わせたい場合
そういう時には本家VSというかall-in-oneが基本のIDEは不便なんだよね
0830仕様書無しさん
垢版 |
2018/05/12(土) 10:04:47.70
オブジェクト指向的で良いよなVSCode

class VSCode : ITextEditor
class Git : IVersionControlSystem
class CakeBuild : IBuildSystem

class VisualStudio : IGodDevSystem

だいたいこんなイメージ
0832仕様書無しさん
垢版 |
2018/05/12(土) 10:50:18.06
関数名や変数名を単なる文字列置換じゃなく構文に沿って書き換えてくれる機能は超便利だよな。
0834仕様書無しさん
垢版 |
2018/05/12(土) 11:53:23.76
codeはバカ向けのvsやしな
好きな奴が多いのもわかるw
0839仕様書無しさん
垢版 |
2018/05/12(土) 13:09:50.99
>>838
(VSが例に出てるから)たとえばC#の場合、それはVSCodeじゃなくてOmnisharp
0841仕様書無しさん
垢版 |
2018/05/12(土) 14:12:29.90
1つのインターフェースから様々なサブシステムをコントロールしてプログラミングのライフサイクル全体をサポートするのが統合開発環境である

という定義なら確かにVSCodeも統合開発環境と言える
しかしこれではEmacsやVimあるいはただのターミナルですら統合開発環境と言ってしまえる

じゃあ統合開発環境とその他の明確な境界線ってどこにあるのと聞かれるとそんなものは定義できないというしかないのが実情
なのでベンダが統合開発環境を公称したりユーザーの大部分がこれは統合開発環境だと認識して初めて統合開発環境とする以外に現実的な定義方法は存在しない

EmacsやVimなどの高機能エディタやただのターミナルを統合開発環境と呼ぶ人は滅多に居ないのでテキストエディタだ
同じようにVSCodeを統合開発環境と呼ぶ人は滅多に居ないのでこれもただのテキストエディタだ
0842仕様書無しさん
垢版 |
2018/05/12(土) 14:23:48.20
そう言う意味ではEclipseも統合環境じゃ無くなるよな?
0843仕様書無しさん
垢版 |
2018/05/12(土) 14:27:49.40
Eclipseは統合開発環境と言っていいだろう
記憶が間違ってなければ公式もそう自称してるし
多くのユーザーが統合開発環境だと認識している
0845仕様書無しさん
垢版 |
2018/05/12(土) 15:34:35.01
Eclipsが統合環境なら、Emacsだって統合環境って言っていいんじゃね?
統合して無い分は外部呼び出しなんてまるっきり同じだろ?
0846仕様書無しさん
垢版 |
2018/05/12(土) 15:47:03.72
自分で環境を作っていくのは統合環境じゃない
統合環境というのは(開発環境が)統合済みの環境であって
統合可能な環境じゃない
0847仕様書無しさん
垢版 |
2018/05/12(土) 15:58:56.55
Eclipseなら最初から統合環境が整備されてるみたいな言い方だな。
0848仕様書無しさん
垢版 |
2018/05/12(土) 19:07:01.18
>>845
Emacsは統合開発環境って自称してないしみんなテキストエディタと思ってるからテキストエディタだよ
0849仕様書無しさん
垢版 |
2018/05/14(月) 12:36:08.62
寄せ集めとintegratedは全然違うもんやろ
統合て訳すとよう分からんようになるけどw
0850仕様書無しさん
垢版 |
2018/05/17(木) 13:41:19.44
emacs の学習曲線を検索すれば
統合されてない環境と言える
0851仕様書無しさん
垢版 |
2018/05/17(木) 19:58:19.68
リファクタリングするだけのプロジェクトとかないのかな
0853仕様書無しさん
垢版 |
2018/05/17(木) 21:54:00.44
月給80万円でいいから永久にリファクタリングするだけのプロジェクトないかな?
0854仕様書無しさん
垢版 |
2018/05/17(木) 21:59:23.66
一般的にウェブサービスなんかだとリリースされた後も
修正(改良)が続くのでリファクタリングし続けることになるだろうね。
もちろんリファクタリングだけではないけれど
0855仕様書無しさん
垢版 |
2018/05/17(木) 22:00:23.48
kbnをtypeに直したり
typeをkbnに直すお仕事

今、お前がやってる仕事とあんまり変わらないじゃん
0857仕様書無しさん
垢版 |
2018/05/17(木) 22:58:54.83
>>855
直す以前に最初からそんなコードありえなくね?
普通どっちにするか決めるでしょ?
0859仕様書無しさん
垢版 |
2018/05/18(金) 07:57:25.67
>>858
設計ではありませんリファクタリングです
わからないのなら答えて貰わなくて結構ですよ?
0862仕様書無しさん
垢版 |
2018/05/18(金) 09:08:37.56
俺、リファクタはifダクで頼むわ、参考演算子は抜いてね
0863仕様書無しさん
垢版 |
2018/05/18(金) 09:46:36.89
だいたい素人の考えるリファクタリングって
どこかずれてるよね >>862とか
0864KAC
垢版 |
2018/05/18(金) 10:03:37.10
素人が考える設計もかなりズレてるから
リファクタリングがズレまくるのは仕方ない
0865仕様書無しさん
垢版 |
2018/05/18(金) 10:13:30.16
で正しいリファクタリングしてるやつから、
お前間違ったリファクタリングしておいて、
自分の間違ったリファクタリングが意味ないーって
マッチポンプしてるだけじゃねーかって言われるわけな
0867仕様書無しさん
垢版 |
2018/05/18(金) 12:28:23.21
正しいリファクタリングw
オナニーにまで権威的裏付けを求めるキチガイの発想ワロタw
0868仕様書無しさん
垢版 |
2018/05/18(金) 13:12:21.69
コンパイラが思いっきり最適化すんだから、可読性以外の目的でリファクタリングなんかするなって言われた。
0869仕様書無しさん
垢版 |
2018/05/18(金) 15:54:23.58
>>868
マーチン・ファウラー様がそう言っているのだから従いなさい

http://bliki-ja.github.io/IsOptimizationRefactoring/

> 最適化とリファクタリングはどちらも変化を伴うものだが
> (なかには最適化かつリファクタリングとなる変化もあるが)、
> 両者は別物だと私は考えている。
>
> なぜなら、両者の目的が異なるからである。リファクタリングは、
> コードを理解しやすくするためである。最適化は、プログラムを速くするためである。
0870仕様書無しさん
垢版 |
2018/05/18(金) 16:23:34.97
一人で頑張ってリファクタリングしても百倍以上の人数で寄ってたかってスパゲティ量産されるからもう諦めた
お前らみたいな意識高い連中と仕事したい
0871仕様書無しさん
垢版 |
2018/05/18(金) 16:29:18.34
>>870
それを防ぐにはコードのコミット前レビューが必須なんだよな
ただの儀式になってない、本当のコードレビュー
0872仕様書無しさん
垢版 |
2018/05/18(金) 17:24:33.27
>>870
まずはリファクタリングを仕事にしてみたら?
それが出来ない現場には、元から未来は無いし。
0873仕様書無しさん
垢版 |
2018/05/18(金) 17:39:16.06
>>872
でもそれはやっちゃいけないんだわ。
本来は最初にコード書いた人がリファクタリングまでやって
コミットするのが正しい流れだから。
責任がある人に、最後まで責任を取らせるのが筋。
もちろん教育を兼ねて手本を見せるのはいいけどね
0874仕様書無しさん
垢版 |
2018/05/18(金) 17:54:57.00
リファクタリング専門業者があれば転職するんだが
メンテナンス不能になったシステムを蘇らせるだけのお仕事
0875KAC
垢版 |
2018/05/18(金) 18:08:18.13
リファクタリングしたら全部テストしろよ?
0879KAC
垢版 |
2018/05/19(土) 00:11:47.58
>>877
それは流石に頭おかしい
0880仕様書無しさん
垢版 |
2018/05/19(土) 02:46:48.77
おかしくない
ネットから遮断してUpdateなどしなければいいんだ
0881仕様書無しさん
垢版 |
2018/05/19(土) 08:01:10.59
>>879
素人さんは気楽でいいよね
Windows Updateの後になんらかの不具合がでる確率はわりと現実的な数字だよ
大きな組織なら経験あると思うがね
無視できるものじゃない
0884仕様書無しさん
垢版 |
2018/05/19(土) 11:16:57.59
>>881
大きい組織だとむしろ経験少ないだろ
小さい組織ほど無条件に更新かけて悲惨な目にあう
0885仕様書無しさん
垢版 |
2018/05/19(土) 11:18:16.17
リファクタをそそのかされて
自分のコードが非常に汚いものに思えて
鬱で死にたくなってきた
0887仕様書無しさん
垢版 |
2018/05/19(土) 12:12:37.26
>>885
コードが価値を生み出していることが第一
きれいとかそういうのは付加価値
本質を見失ってはならない
0888仕様書無しさん
垢版 |
2018/05/19(土) 12:31:37.71
商品が売れていることが第一
生産コストがどうとかは付加価値

↑付加価値ではないだろ
0889仕様書無しさん
垢版 |
2018/05/19(土) 12:39:02.26
>>888
プログラマーが一人二人楽になるのが
広汎なユーザーに対して損ねた価値に見合うことか?
0890仕様書無しさん
垢版 |
2018/05/19(土) 12:45:02.00
え?プログラマが楽になるということは
少ない作業(コスト)で生産できるということだから
結果的に利用者に恩恵があるでしょう?
0891仕様書無しさん
垢版 |
2018/05/19(土) 12:50:22.23
>>885
「この消臭スプレーはすごい効きますよ。オススメです」は「お前臭いよ」をオブラートに包んだ言い方
「リファクタリングオススメ」は「お前のコードクソだよ」をオブラートに包んだ言い方
日本人は回りくどい言い方をする
0892仕様書無しさん
垢版 |
2018/05/19(土) 12:55:50.98
>>890
コードのきれいさのためにアプリとしての達成度が下がってるようなときはどうなんだ
0893仕様書無しさん
垢版 |
2018/05/19(土) 13:00:12.79
身近な例だとスケーリングかな
スケールしたい時ってビジネスリスク回避かビジネス拡大のチャンスのどっちかなんだよね
その時になってメチャクチャに結合してるので簡単にはスケールできませんなんて事になったら大損害だよ
綺麗なコードには多大な価値があるんだよ
0894仕様書無しさん
垢版 |
2018/05/19(土) 13:02:28.95
>>892
コードのきれいさのためにアプリとしての達成度が上がってる場合もありますよ?
0895仕様書無しさん
垢版 |
2018/05/19(土) 13:04:47.54
コードが汚いと同業他社とのサービス競争にも負けるね
ライバル社が面白い機能を公開してユーザーの注目を集めてる
後追いになってしまうが自社も同等の機能を追加したい
コードが汚いと機能を追加するのにも時間がかかる
時間がかかればかかるほどユーザーの乗り換えが加速する
とんでもない損失だ
0896仕様書無しさん
垢版 |
2018/05/19(土) 13:20:53.42
下請けの身だと、コードを納品して金をもらうことが第一
コストとかそういうのはエンドユーザーと元請けの間の話だから下請けには無関係
0897仕様書無しさん
垢版 |
2018/05/19(土) 13:38:09.61
コードを綺麗に書けば、早く書けるしバグも少ない
すると残業もなくなるし、バグ修正の手間も減らせる
下請けでも綺麗なコードには価値があり
0899仕様書無しさん
垢版 |
2018/05/19(土) 14:00:47.81
>>897
つまり結果的に早ければコードのきれいさは関係ないんだよね?
0901仕様書無しさん
垢版 |
2018/05/19(土) 14:38:06.94
ん?どこの国でも一緒じゃないん
さすがに関数名とか日本語にしないよ??
0903仕様書無しさん
垢版 |
2018/05/19(土) 15:39:01.74
>>899
コスト意識の無いトイプロジェクトならそれでも良いんじゃね?
0904仕様書無しさん
垢版 |
2018/05/19(土) 15:58:48.72
綺麗に早く安く高品質に書けるものをわざわざ汚く時間をかけてバグだらけにする意味がわからん
0905仕様書無しさん
垢版 |
2018/05/19(土) 16:06:04.82
字下げだってそうよ
オールマンスタイルが読みやすいって人もいれば
Javaスタイルが良いという人もいる
いろんな人がいる、自分と違う価値観を受け入れてこそ
立派な社会人ですぞ
0906仕様書無しさん
垢版 |
2018/05/19(土) 16:45:54.60
価値観じゃなくて実際に金に関わるんだよ
インデント派閥みたいなお遊びじゃねえんだからしっかりしろ
0907仕様書無しさん
垢版 |
2018/05/19(土) 17:00:56.57
>>906
そんなのケースバイケースじゃん
アイデアをどこよりも早く出したいならスピード重視だし
末永く保守していくことが最初から確定してるSIer案件なら保守性重視するし
どちらの価値が大事ですかってことでしょ
0908仕様書無しさん
垢版 |
2018/05/19(土) 17:03:00.99
>>899
> つまり結果的に早ければコードのきれいさは関係ないんだよね?

結果的に早いコードを「きれい」と言ってるんだよ
0909仕様書無しさん
垢版 |
2018/05/19(土) 17:19:51.83
>>907
勘違いしてるね
アイデアをすぐに出すためには綺麗に書いた方が良いんだよ
スパゲティコードに機能を追加することは困難
綺麗に書けば書くほど機能を素早く追加できる
0910仕様書無しさん
垢版 |
2018/05/19(土) 17:21:33.03
綺麗に書くのと製造スピードがトレードオフの関係にあるって誤解はなんで広まったんだろうな
0911仕様書無しさん
垢版 |
2018/05/19(土) 17:29:23.99
>>910
スピード重視ならコピペ上等だからじゃないかな
0912仕様書無しさん
垢版 |
2018/05/19(土) 17:30:47.66
>>909
勘違いしてないね
機能を追加するのはあとからでいい
その前にリリースしなきゃ、一生二番煎じのサービスと
言われ続けるよ、スピードが命なんだよこの世界
0913仕様書無しさん
垢版 |
2018/05/19(土) 17:31:04.61
本当にコピペだけで済むなら関数にしたほうが良いじゃん。

コピペっていうのは、実はコピペ+修正でしょ?
修正してる分遅くなってる
0914仕様書無しさん
垢版 |
2018/05/19(土) 17:31:59.57
そしてスピードが重視だからこそ
リファクタリングが重要なんだよ。

まずリリース。そして問題なさそうならリファクタリング
そうやってスピードを落とさずにリリースをし続ける
0915仕様書無しさん
垢版 |
2018/05/19(土) 17:32:39.90
どこよりも速いスピードでアイデアを形にして
サービスを提供してユーザが集まったら
0から作り直せば良い
最初から保守のこと考えて作ってたら
遅すぎるんだよ
0916仕様書無しさん
垢版 |
2018/05/19(土) 17:33:35.15
>>913
ちょっと違う関数が出てきた場合に
抽象化するかコピペするかの選択を迫られる
躊躇なくコピペできる人間が勝負に勝つ
0917仕様書無しさん
垢版 |
2018/05/19(土) 17:33:38.11
リファクタリングすればいいので
0から作り直す必要がない
0919仕様書無しさん
垢版 |
2018/05/19(土) 17:34:56.04
>>911
修正工数が跳ね上がるな

そもそもコピペするよりメソッド呼び出しの方が書くのも圧倒的に速いんだが

コピペって口で言うよりめんどくさい作業だと思うんだが?
お前らどう思う?
0920仕様書無しさん
垢版 |
2018/05/19(土) 17:35:03.25
>>914
テスト作ってる暇なんて無いわ
リファクタリングなんてやってたら
リリース時点で負ける、最初の敗北は取り戻せない
0921仕様書無しさん
垢版 |
2018/05/19(土) 17:35:26.83
>>917
どっちでも良い
0922仕様書無しさん
垢版 |
2018/05/19(土) 17:36:07.74
>>920
だからリファクタリングがある
最初のリリースではテスト作らなくていい
だから勝てる。
そして勝った後リファクタリングをする
勝ち続けられる
0923仕様書無しさん
垢版 |
2018/05/19(土) 17:36:27.44
>>918
はい負けた、お前いまスピード勝負で敗北した
お前のサービスは誰も使わない、どっかの誰かの真似だから
一番じゃないとダメなんだよ!
0924仕様書無しさん
垢版 |
2018/05/19(土) 17:37:15.41
>>922
テストの無いリファクタリングなんてありえない
つまり最初のリリースではリファクタリングを考える必要ない
だから俺が言ってることが完全に正しい
0925仕様書無しさん
垢版 |
2018/05/19(土) 17:37:54.88
>>912
リリースするまでも綺麗に書いた方が速いぞ
汚いコードはスケール小さくてもバグがわんさか湧いてくる
急ごしらえでリリースしたらバグが多くてユーザーが即座に興味を失ったサービスなんて珍しくもない
0926仕様書無しさん
垢版 |
2018/05/19(土) 17:38:05.68
お前らそんなにリファクタリングが大事なら
自分のレスをリファクタリングしてろよw
0927仕様書無しさん
垢版 |
2018/05/19(土) 17:40:02.41
>>920
テストコードを書かなくても手動テストはやらなきゃならない
手動テストやる工数でテストコードを書くのは容易
0928仕様書無しさん
垢版 |
2018/05/19(土) 17:40:18.56
>>925
YouTubeもGoogleもバグだらけだが圧倒的インフラパワーと
サービスの斬新さでユーザに有無を言わさず使わせてるだろ
スタートダッシュでぶち抜かれたら勝てない
ツイッターもフェイスブックも1番だったから今でも頂点に君臨してるんだ
0929仕様書無しさん
垢版 |
2018/05/19(土) 17:41:03.61
>>924
テストの無いリファクタリングなんてありえない
つまり最初のリリースではリファクタリングを考える必要ない
だから勝てる

その後リファクタリングをする
勝ったあとリファクタリングをする
勝ったと決まった後の話、勝つのは決定事項
その後のリファクタリングが勝利を継続させる
リファクタリング最高
勝った後勝ち続けられる
0930仕様書無しさん
垢版 |
2018/05/19(土) 17:41:14.07
>>927
手動テストは必要ない
マウスポチポチして動いたやったリリースだ
これでOK
これが最速の世界
0931仕様書無しさん
垢版 |
2018/05/19(土) 17:41:42.67
>>923
お前の負け
バグだらけで使い物にならん
急ごしらえでインターフェースデザインがクソだし
この会社名は脳内のブラックリストに入れて忘れるまでもう二度と使わん
0932仕様書無しさん
垢版 |
2018/05/19(土) 17:42:12.76
>>929
なるほどじゃあお前は俺と全く同じことを言ってる
俺の代弁者として認めよう
0933仕様書無しさん
垢版 |
2018/05/19(土) 17:43:39.28
>>928
そいつらはお前のコピペコードとは段違いの綺麗なコードを初手から書いてるんだよ
だかた大規模なサービスでもスムーズにスタートできた
0936仕様書無しさん
垢版 |
2018/05/19(土) 17:48:39.75
>>935
ユーザは使うんだよ、なぜならば斬新なアイデアだから
スピード重視でどこよりも早くそれを形にしたから
サービスとして使えるようにしたから
業界の人もなんだこれはと思いバグを見つけるだろうが
それさえも話題の一つになる、こんなバグがあったと
あざ笑う一方で笑ってる人間は同じだけの成果を出せない
つまりアイデアを誰よりも早く形にして世に出すという
ことがいつまでもできない
0937仕様書無しさん
垢版 |
2018/05/19(土) 17:51:08.35
つまりアイデアを誰よりも早く形にして世に出す
そしてリファクタリング
0938仕様書無しさん
垢版 |
2018/05/19(土) 17:51:16.64
TwitterもLINEもPayPalもコインチェックも
スピードで他を突き放したからこそ莫大な利益を得ることができた
0939仕様書無しさん
垢版 |
2018/05/19(土) 17:51:36.18
スピードとメンテナンス性を両立させるのは
リファクタリングしかない
0940仕様書無しさん
垢版 |
2018/05/19(土) 17:53:15.79
しかしリファクタリングの工数は取れない
なぜならばユーザに関係がないからだ
0942仕様書無しさん
垢版 |
2018/05/19(土) 17:55:47.84
COBOLで作られてシステムがメンテナンス不能になったのは
COBOLという言語の問題ではなくリファクタリングしていなかったことが
問題だというのが最近の結論となっている
0943仕様書無しさん
垢版 |
2018/05/19(土) 17:56:09.36
>>941
ユーザの要望はこういうサービスを作ってくれって
ことだ、開発のスピードは開発会社内での話だ
ユーザの要望とは一切関係ないし興味もないから
絶対に金は出しません!
0944仕様書無しさん
垢版 |
2018/05/19(土) 17:56:57.52
>>943
端的に物事を言ったらどうだ?
ユーザーは開発費用を出さずに
開発しろと言ってるだけ
0945仕様書無しさん
垢版 |
2018/05/19(土) 17:57:43.29
Windows95を開発した天才プログラマーの本を読め
大事なのはスピード・スピード・スピード

https://www.amazon.co.jp/dp/4905073413/
・遅い天才より、速い凡人がトップに立つ
・3500個の不具合があっても、世界は変えられる
・2:8の法則が、あなたの仕事を変えていく
・石膏像を掘るとき、「眉毛」から始める人はいない
・最強の昼寝は、18分
・あなたの仕事は、規則を守ることではない
・待ち合わせ30分前に、スタバでコーヒーを飲め
0946仕様書無しさん
垢版 |
2018/05/19(土) 17:58:14.53
>>944
はい二番煎じ
俺が先に言った、お前は敗北者
0947仕様書無しさん
垢版 |
2018/05/19(土) 17:58:39.79
ユーザーは開発費用を出さずに
開発しろと言ってるだけ
それに従うのは愚か者でしかない
0948仕様書無しさん
垢版 |
2018/05/19(土) 17:59:13.43
>>945
Windows 10はリファクタリングしまくってる
スピードとはリファクタリングのことである
0949仕様書無しさん
垢版 |
2018/05/19(土) 18:00:29.77
>>947
でも実績はできますよ
ユーザが有名な組織だったら
その実績をかざして儲かる仕事にありつけるって算段ですわ
0950仕様書無しさん
垢版 |
2018/05/19(土) 18:01:20.23
>>948
圧倒的シェアで囲い込みができて
ベンダーロックインの状態なら
そうすることもできるやろうけどね
0951仕様書無しさん
垢版 |
2018/05/19(土) 18:01:59.52
>>949
そしてリファクタリングすることで更に儲ける
開発費用を出さないで開発を要求する所は
切り捨てたほうが良い
0952仕様書無しさん
垢版 |
2018/05/19(土) 18:02:49.27
>>950
だから圧倒的シェアで囲い込みをして
リファクタリングする
リファクタリングするという前提なしに
圧倒的シェアの囲い込みはできない
0953仕様書無しさん
垢版 |
2018/05/19(土) 18:03:05.72
>>951
ユーザはリファクタリングに金は出さへん言うてるやろが!!!
0954仕様書無しさん
垢版 |
2018/05/19(土) 18:05:41.32
>>952
できたじゃん、Windows95は圧倒的シェアを獲得したじゃん
バグだらけだったじゃんWindows Meの頃までクラッシュしまくりだったじゃん
それでも圧倒的シェアを達成できたじゃろう
リファクタリングはシェアとは関係ないんじゃ
開発者の自己満なのじゃよ
0956仕様書無しさん
垢版 |
2018/05/19(土) 18:07:11.20
>>954
シェアを維持に必要だってさっきから何度も言ってる
その証拠に Windows はリファクタリングし続けてる
0957仕様書無しさん
垢版 |
2018/05/19(土) 18:07:55.98
Windowsは毎回作り直していない
リファクタリングし続けてる
0958仕様書無しさん
垢版 |
2018/05/19(土) 18:09:24.36
>>956
NTカーネルは別で作ったんやで
リファクタリングとは別次元やで

スピードで価値を創出して
その金で新しいプロダクトに投資したんやで
リファクタリングは関係ないっす
ただの開発者の自己満っす
マジっす
0959仕様書無しさん
垢版 |
2018/05/19(土) 18:10:21.96
>>957
Windows Vistaのころにも
フットプリントが小さい軽量カーネルをゼロから作ったんやで
マイクロソフトなめんなよ
0960仕様書無しさん
垢版 |
2018/05/19(土) 18:10:40.80
>>958
Windows 95はリファクタリングし続けた
NTカーネルもリファクタリングし続けてる

リファクタリングをした結果に満足したから
今もリファクタリングし続けてる

もしリファクタリングがだめなら
最初の一回で止めていたはずだ

勝利を継続させるためにリファクタリングは
必須であることの証拠
0961仕様書無しさん
垢版 |
2018/05/19(土) 18:11:38.26
>>959
> フットプリントが小さい軽量カーネルをゼロから作ったんやで

それ以外はリファクタリングしている
リファクタリングがなければ、軽量カーネルで
OS、アプリを動かすことはできなかったであろう
リファクタリングは様々な問題を解决している
0962仕様書無しさん
垢版 |
2018/05/19(土) 18:13:02.73
>>960
製品に投資してるだけでリファクタリングは関係ないっす
マジっす、リファクタリングで金を生み出せるなら
ブリキのおっさんは世界の大富豪の一人になってないとおかしい
スピードこそが価値を生むのはマイクロソフトが証明してる
0963仕様書無しさん
垢版 |
2018/05/19(土) 18:14:13.47
>>961
リファクタリングってそんな便利なことばじゃないと思う
リファクタリングしてないんじゃないかな
修正はしてるだろうけど
はっきり言います、マイクロソフトはリファクタリングには一切手を出していません
0964仕様書無しさん
垢版 |
2018/05/19(土) 18:15:24.45
実際Windowsの開発者の本読んだけどリファクタリングなんて
一文字も出てこなかった、とにかく大事なのはスピードだって
0965仕様書無しさん
垢版 |
2018/05/19(土) 18:18:33.36
>>963
> はっきり言います、マイクロソフトはリファクタリングには一切手を出していません

ほら、ボロが出た。
こいつは息をするように嘘をつく


http://ascii.jp/elem/000/000/506/506852/

前回では、Windows 7の中核と言える「MinWin」に関して解説した。
MinWinはVistaのカーネルをベースとしているが、
「リファクタリング」というコンセプトで整理統合されている。
0966KAC
垢版 |
2018/05/19(土) 18:18:58.51
>>880
Windowsがリファクタリング続けてるとか
どこから出た妄想?
0968仕様書無しさん
垢版 |
2018/05/19(土) 18:21:48.33
再開発なんて現実的じゃない
リファクタリングが様々な問題を解決できる

再開発を断念、BIND 9のリファクタリングへシフト
https://news.mynavi.jp/article/20170216-a275/

> 開発チームは以前BINDをスクラッチから再開発する
> 取り組みを行ったことがあるが、これは失敗に終わったとしている。
0969仕様書無しさん
垢版 |
2018/05/19(土) 18:22:02.51
>>965
コンセプトがリファクタリングってだけで
リファクタリングしたわけじゃないだろうが
実際にやったのは整理しましたってだけだろ
整理することをリファクタリングなんて言ったら
年末の大掃除は大リファクタリングと呼ばなければいけなくなるわ
日本人として恥ずかしい
0970仕様書無しさん
垢版 |
2018/05/19(土) 18:23:10.05
Windowsはなぜリファクタリングし続けるのか?
それは勝利を継続させるためである

Announcing Windows 10 Insider Preview Build 11099
https://blogs.windows.com/windowsexperience/2016/01/13/announcing-windows-10-insider-preview-build-11099/

The code refactoring (リファクタリング) and other engineering work we’ve been doing to optimize OneCore is nearing
the point where we will be ready for teams to begin checking in new features and improvements.
0971仕様書無しさん
垢版 |
2018/05/19(土) 18:23:31.68
>>969
嘘つきは消えろ
リファクタリングしてる情報はいくらでも出てくる
0972仕様書無しさん
垢版 |
2018/05/19(土) 18:24:04.89
>>968
リファクタリングという言葉を改修という意味で使ってる
リファクタリングがバズワードと化しただけ
0974仕様書無しさん
垢版 |
2018/05/19(土) 18:25:27.39
>>972
泣くなw
泣いて喚いてもリファクタリングしている証拠は消えない
お前の涙で見えなくなるのはお前だけだ
0976仕様書無しさん
垢版 |
2018/05/19(土) 18:25:50.53
>>971
その情報全部読んだけどリファクタリングが
バズワードであることを良いことになんでもかんでも
リファクタリングと言い換えてるだけだった
昔ながらのレンタルサーバをクラウドと言って
クラウドやからええんやでと言ってるようなもの
実態はただの修正
0977仕様書無しさん
垢版 |
2018/05/19(土) 18:26:41.85
やはりリファクタリングだけが問題を解決する
現実的な手段なんだな
0978仕様書無しさん
垢版 |
2018/05/19(土) 18:26:56.12
>>974
俺は今血の涙をながしながら
バズワードを都合よく利用するお前の卑劣な弁論に激怒している
0979仕様書無しさん
垢版 |
2018/05/19(土) 18:27:12.20
>>976
だから泣くな。
お前が泣いても、こっちは笑いしか生まれない
0981仕様書無しさん
垢版 |
2018/05/19(土) 18:28:15.48
知ってるか?Visual Studioには
さまざまなリファクタリングサポート機能が
搭載されている
0982仕様書無しさん
垢版 |
2018/05/19(土) 18:28:51.59
そもそも見積り終わってからお仕事増やすのやめてもらえます?
0983仕様書無しさん
垢版 |
2018/05/19(土) 18:29:00.36
>>979
お前笑ってる時が一番輝いてる
リファクタリングには価値がないことも
笑って受け入れていただきたい
0985仕様書無しさん
垢版 |
2018/05/19(土) 18:29:59.00
やばい、リファクタリング最強説が出てきた
アンチの言ってることを突き詰めていったら
リファクタリング最強だった
0986仕様書無しさん
垢版 |
2018/05/19(土) 18:30:26.73
>>981
実際にはコード修正機能だよね
テストが自動生成されるわけじゃないし
0988仕様書無しさん
垢版 |
2018/05/19(土) 18:30:59.90
>>985
落ち着けよ、どんだけ興奮してるんだよ、変態か
0989仕様書無しさん
垢版 |
2018/05/19(土) 18:31:34.55
リファクタリングはすべての問題を解決する唯一の手段
0991仕様書無しさん
垢版 |
2018/05/19(土) 18:31:55.03
>>987
ぶえーん、俺可哀想、ただの修正をリファクタリングと言って
詭弁使ってる人が居て俺可哀想
0994仕様書無しさん
垢版 |
2018/05/19(土) 18:32:39.01
アンチは論破された。泣き崩れている。
ウソと詭弁で自分を守ることしかできていない
0995仕様書無しさん
垢版 |
2018/05/19(土) 18:32:46.90
リファクタリングが金を生まない事実はどうするのか
0996仕様書無しさん
垢版 |
2018/05/19(土) 18:32:56.66
アンチは論破された。泣き崩れている。
ウソと詭弁で自分を守ることしかできていない。
様々な証拠がリファクタリングの有用性を示している。
0997仕様書無しさん
垢版 |
2018/05/19(土) 18:33:22.42
アンチは論破された。泣き崩れている。
ウソと詭弁で自分を守ることしかできていない。
様々な証拠がリファクタリングの有用性を示している。

マイクロソフトもリファクタリングをしていた。
Googleもリファクタリングをしていた
Appleもリファクタリングをしていた。
0998仕様書無しさん
垢版 |
2018/05/19(土) 18:33:48.83
>>996
一時が万事そんな調子じゃ議論になりませんな
0999仕様書無しさん
垢版 |
2018/05/19(土) 18:33:50.70
アンチは論破された。泣き崩れている。
ウソと詭弁で自分を守ることしかできていない。
様々な証拠がリファクタリングの有用性を示している。

マイクロソフトもリファクタリングをしていた。
Googleもリファクタリングをしていた
Appleもリファクタリングをしていた。

もう誰にも止められない。
アンチはウソと詭弁を繰り返すだけ
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 34日 5時間 20分 29秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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