コードの行数を減らすと生産性があがりバグも減る [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
この事実を発見してから我が社では既存のコードを修正し、
行数(正確にはステップ数)を極限までに減らす修正をすることで
バグを大幅に減らして生産性も大きく上げる事に成功した。 >>1
可読性まで犠牲にして逆にバグが発見でき無いコードにならんようにな。 できるだけ改行しなければいいのか。
そんなソースコードとは関わりたくないが。 アホやw
行数よりも
コードの見やすさとコメント量の方が大事
誰が見てもわかりやすいコーディング
メンテで差がつく でもコードの行数がすくなければ
メンテする量も減るんですよ。 >>7
そりゃ、処理、機能がないんだからそうなるなw コメントも多すぎると、そのコメントのメンテナンスも
必要になるから、コメントも少ないほうがいい。 >>10
どこかまずい所があったら直しますんで、
具体的に指摘してみてください。 こんなん当たり前の話とちがうん?
昔のエライ人が言ってだろう?
「シンプル・イズ・ベスト」
簡単なモノは壊れにくい。複雑なモノほど壊れやすい。
これはプログラムコードにも当てはまるんよ。
俺はもう設計屋だから、コード書かせるときに必ず若いもんにこれ言うわ。 >>14
その当たり前のことが出来ないんだよね。
ソフトウェアの難しいのは、
バージョンアップしていく所。
大きい物と小さい物は作り方が違うんだけど、
小さく作って大きくしていく時に、
既存の部分を大きい作り方に直さないといけないんだけど、
「既存の部分に手を付けるな」とかいう馬鹿な奴が
指揮をとると、どんどん複雑になって手がつけられなくなる。
既存の部分を修正すれば、1.1の量で済むことが、
手を付けれないからコピーして、2になる。 本当に手を付けられないコードは、ある。
コードに手を入れればコード増加は少ないだろうが、リグレッションテストの工数が増えるだろ?
どっちの工数が少ないか秤にかけ、コードに手を入れない事は、フツウにあるだろ?
どっちがいいかは、プログラマには関係ないことだ。 > リグレッションテストの工数が増えるだろ?
そうならないように自動化すればいい。
結局オレが言ってることと一緒で、
手を入れるから増えるのではなく、
手遅れになってるから増えるんだよ。 >>16
> どっちがいいかは、プログラマには関係ないことだ。
いや、プログラマが判断することだろ。 >>1
生産性の定義すら提示してないから、もともと議論する気はなさそうだな。 シンプルなソースと行数は相関関係がないと思うんだが
一行に纏めて読みづらいif文よか5行でも読みやすい方が
保守工数は減るんでね >>19
単位時間当たりの生産量だろ?プログラマなら、単位時間当たりの
コーディング量+テスト量って事になる。 >>22
共通関数用意してるのに使えないから誰も使わなくて至る所で同じような処理が行われてるとか、
しかもそれが微妙に違うから各モジュールでデータをやり取りするときに変換かけないといけないとか
そういうのは? つまりなんだ、このスレはソースコードの負の遺産の話でしょ
ゴミや糞は片付けよう! 少ない行で書けるシンプルなコードを書けということで行数を減らすのが目的ではないよな 行数が問題なんじゃねえよ
instructionが少なくなるように書けっつってっだろ? >>28
>>1の
> 行数(正確にはステップ数)を
を読んでますか? >>29
はあ?
instructionだよアホ
頭ん中で簡単なアセンブリしながら書けっての if文に関数コール埋め込んだりすると行数は減るがデバッガで追いにくくなるんだが 三項演算子とかも二重三重にまとめ書きして行数減らすのが推奨?
解読困難になるけど >>32
最近はデバッガで追うようなことはしなくなってるよ。
まずはテストコードが書けるようなシンプルな関数を作る。
テストコードがあればデバッガはほとんど必要ない。 コーディングスタイルで行数を減らすって話じゃないだろ
その機能を実現するのに最適なロジックを選択したら行数も減るってことの裏返しを言ったんだよな?>>1 >>20
お前だけ、経営者が決めた生産性でやってれば良いんじゃね? >>38
ソースコードを眺めて(セルフレビュー)して
間違いを見つける。
これができない=コードが複雑 ということ ただの裏方データ処理ならいくらでもシンプルにできるだろうけど
GUIが入ると人間の曖昧性を処理しなきゃいけないから
コードをシンプルにすればするほどゴミUIに近付いていく >>40
コード読むとのんびり?
あんた、他人がコードレビューしてないの?
読むのに時間がかかるコードだから?
終わってるねw 眺めるならテストコードとパターンだろ。
テスト結果が合えば終わり。
合わなきゃテストパターンから原因箇所は特定できる。
お前のセルフレビューが正しいって保証はどこにあんだよ。 >>45
そうだよ?
レビューとデバッグは両方やるし、その両方でコードを読む。
だからコードはスムーズに読めるに、なっていなければならない。
コードは解析するものじゃない。
デバッグで解析は楽ですーっていっても、
レビューでコードを読むわけで、コードを読む=のんびり。であるなら
まずその問題を解決しなければならないよね?
で、その問題が解決できれば、コードを読んでバグの修正もできる。 >>46
問題にしているのは、コードを読む時間ではない。
バグの修正にデバッガを使わないことで無駄になる時間を問題にしている。
あるバグを修正するのに、デバッガを使えば1分で原因が特定できたのに
使わなかったために原因の特定に10分かかった場合は、9分間給料泥棒
やってたことになる。
30分コード見ても原因が特定できずに、結局デバッガ使うことになったら
30分まるまる給料泥棒だ。 >>47
そもそも、デバッガを使っても
時間は短くならない。 >>49
逆w
酷いコードだと
中で何やってるかわからないから
デバッガ使って動かしてみないとわからない。
ちなみに基本的にコードレビューというのは
実行しないで行う。 主な使い捨て実態派遣作業
・データ > ロジック
・簡単ロジック
・大量データ
・フレームワーク
・Web
・DB
・SE適性不要
・IT資格不要
・大卒資格不要
・文科系対象
・体育系対象
・業務系処理
・商業系業種 同じコードを2度書くな
大切なことだからもう一度書いとくよ
同じコードを2度書くな
コードの行数は減ることが多い
単体レベルのテストは減る
同等のコードなので生産性は上がらない
コードが分散しないのでバグは減る
同じコードを2度書くな(大切なのでry
違和感があるときはリファクタリングのタイミング >>52
二度以上書かないとならない数行のコードなんて普通にあるから。
おまいの書いた内容程度の行数なら何回でも同じコードを書いてもいいよw 類似性のある複数のコードは、相違点だけを引数とかで吸収するようにして纏めてしまえ、てことなんでしょ
纏め方も、サイズ重視か速度重視かで関数なのかマクロなのか変わるだろうけど ■ このスレッドは過去ログ倉庫に格納されています