- - PR -
ソース修正の際に古いソースをコメントアウトするのはダメ?
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2009-04-02 11:28
ナシです。
ソース管理ツールで差分を見づらくなります。 ソースそのものも見づらくなります。 初めの数回は「可読性が損なわれない範囲」でいけるかもしれませんが… | ||||||||
|
投稿日時: 2009-04-02 11:41
小規模ならともかく、それもソース管理ツールのお仕事にしていますね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2009-04-02 17:43
私はリファクタリングできるフェーズまではコメント無しで修正
します。(当たり前。。。?!) で、システム試験、運用試験レベルからは 古いソースも残して修正します。<<< これはなるべく小手先で修正したい!! ドラスティックな修正が入った場合は難しいです。 | ||||||||
|
投稿日時: 2009-04-07 21:52
ええ、小規模の改造です。改造じゃなく、「障害修正」。 改造の場合、管理ツールにも「バージョン X への改修」としか入力しません。コード上にも、「バージョン X による変更」程度。仕様書が作ってあるはずだから。 障害修正の場合、管理ツールのコメントには「障害番号 Y の修正」として、コードの直したところに「(簡単な修正理由)」と入れます。障害の理由や対応方法は、障害管理票に載っているはずだから。 | ||||||||
|
投稿日時: 2009-04-10 00:47
アンチパターンの一種に lava flow(参照されていないクラスやメソッドが大量に残っていて読解性を損なう)というものがありますが、古いコードをコメントアウトして残すというのはこれの亜種ではないかと思います。
障害修正の場合の対応方法もプロジェクト毎ですが、私の意見が通るプロジェクトでは以下の方法を提案させていただきました。Jitta さんが書かれたものとほぼ同じですが。
ドラスティックな変更(アルゴリズムを別のものに変更した等)を加えた時は修正前のコードをコメントアウトして残す場合もありますが、それでも次のリビジョンではばっさり削除して「古いコードを見たい場合はリビジョン 1.10 以前を参照」程度の 1 行コメントに置き換えてしまいます。 修正とは別に、やや複雑なアルゴリズムを実装する場合などは、どうしてその方法を採ったか、代替アルゴリズム(将来仕様変更が入った場合に再度検討する候補として残しておく)、利用時の注意事項(事前に別のメソッドが実行済みでなければならないとか、マルチスレッド対応は不要なのでこの方法にしたが対応要の場合は synchronize しろとか)などを、詳細設計ドキュメントにも書きますが、ソースにも書くようにしています。 この辺りの状況は他の皆様と若干異なるかもしれません。 (フリーランスで 1 プロジェクトあたり 6 か月程度の参画が続いており、常に引継ぎを考えてコードを書くようにしているためです。) |