3

他の誰かが見るためにソース コードをリリースするとき、コーディング スタイルが明確に定義されていない場合 (しゃれが意図されていない場合)、#ifdefDEBUG 部分を削除しますか?

(DEBUGが定義されている場合にのみコンパイルされる部分です)

それを削除すると、コードの見栄えが良くなります (または、見栄えが良くなります。デバッグしたことと、どのように実行したかを誰かに本当に知ってもらいたいですか?)。ただし、デバッグ部分が失われるか、またはコードの 2 つ (またはそれ以上) のバージョンを保持する必要があります。

何を終わらせるべきなのですか?

4

6 に答える 6

8

デバッグ コードがクリーンで、ログ ステートメントに「専門的な」言語が含まれている場合は、そのままにしても問題ないと思います。 'ここにいる...'あなたはそれを取り出す必要があります。

あなたのデバッグ ステートメントが、あなたが理解できない問題があるという事実を反映している場合、あなたのソフトウェアを誰かに「売る」つもりなら、それらを取り除くのが最善かもしれません。(うまくいけば、後でそれらを修正できます...)

于 2009-04-09T21:13:56.863 に答える
3

私もそのままにしておくことに投票します。最初のパッチの作業を開始する場合は、DEBUG でブロックされた部分が必要になる可能性があります。また、コードがディレクティブでブロックされている場合でも、コードを削除したことを QA は好まないでしょう。

于 2009-04-09T21:19:59.813 に答える
3

解説で推奨できない言葉を使用しない限り、コードはそのままにしておく必要があります。誰かがあなたのコードを使用する場合、おそらく彼らはそれらを必要とするか、コードを理解するのに役立ちます. (これはコメントでも同じです)

編集:過去に他のスタジオコードのドロップに頻繁に取り組みました。私はデバッグコード、デッドパス、その他多くのものを見てきましたが、それでも私が嫌いだったのは、コードからデバッグとコメントを取り除く人々でした。これにより、コードの保守が本当に難しくなります。

于 2009-04-09T21:14:24.023 に答える
2

それらを削除する場合は、コードをエクスポートするときにスクリプトを使用してそれらを除外するだけで、2 つのバージョンを維持する必要はありません。

于 2009-04-09T21:18:49.613 に答える
2

ソース コード管理システムのすべてでベース バージョンを維持します。

次に、1 つまたは複数の方法でフィルター処理されたソース コードを配布する場合は、ソース コードのリリース バージョンを作成するスクリプトを作成します。

これらのセカンダリ フィルタリング リポジトリは維持せず、常に生成するようにします。

しかし、それは時間の価値がありますか?おそらくそうではなく、#ifdef DEBUG 部分を含むすべてを配布する必要があります。

于 2009-04-09T21:27:05.460 に答える
0

ANYTHING の複数のバージョンを維持することは望ましくありません。

必要な場合にのみ行ってください

于 2009-04-09T21:35:04.020 に答える