2010-11-24 18 views
1

これは非常にエントリーレベルの質問ですが、ColdFusionのコメントはサーバーによって処理されるのですか?それらはアプリケーションにオーバーヘッドを追加しますか?Coldfusionコメントはオーバーヘッドを追加しますか?

私たちの会社は、怠け者のプログラマーや悪い習慣によって導入された悪い習慣を持っているので、もう使用しないコードをコメントアウトするだけです。私たちがSVNを手に入れる前には、作業コピーしか持っていないので意味がありましたが、今はsvnの人々がコードをコメントアウトし続けています。

これはオーバーヘッドを追加しますか?これが引き起こす可能性のある他の問題はありますか?

答えて

6

いいえ、ColdFusionソースコード(CFML)のコメントはオーバーヘッドを追加しません。プログラミング言語のほとんどすべてのコメントはコンパイル時に無視されます。

CFMLはJavaバイトコードに直接コンパイルされます。このバイトコードは、Javaソースを表示するために逆コンパイルできますが、ソースCFMLにそれを逆コンパイルすることはできず、逆コンパイラによって追加されない限りコメントは表示されません。

コメントは、元のCFMLソースコードの行数に追加するだけです。

ファイルにコメントアウトされたコードがある場合、「コードの匂い」に追加され、元のコードが常にバージョンコントロールシステムに存在するため、取り除く必要があります。実際にはバージョン管理を使用します)。

+0

バージョンコントロールを使用しています。あなたのコメントをありがとう、それは私が思ったものですが、わかりませんでした。 – Micharch54

2

これには他にも問題がありますか?

はい。プログラマーがの理由を説明することはめったにないので、後でプログラマーが入り、コードを見ると、間違いなく混乱を招くことがあります。彼らはそれをコメントアウトしました。一見すると、コードがコメントアウトされて別のコードに置き換えられたのか、特定のステップまたはアクションが削除されたのかは必ずしも明らかではありません。私はあなたが持っていることを計画機能がある場合には、コードをコメントアウトするのに最適な時間があると思い

<!--- Disabled until we can figure out why it sometimes 
     deletes all tables from the database 

<cfset ... 
---> 

または

<!--- Removed (temporarily?) because Bob said so (see Ticket #AZ345 

<cfset ... 
---> 

:少なくとも、コメントコードは常に何かを始める必要がありますある時点で実装されていますが、一時的に無効になっています。たとえば、ある時点でSMSベースの確認メッセージを送信する予定ですが、ゲートウェイはまだ設定されていません。コードを書いて、コメントを外し、後でコメントを外すことができます(これに対して別のブランチを作成することもできますが、それはやりすぎです)。同様に、一時的に有効または無効にする機能(たとえば、ホリデーシーズンごとに再表示される機能)があり、コードをアクセス可能な場所に保管することが理にかなっています。

+0

私が試みた特定のアプローチがアプリケーションの他の部分で問題を引き起こした場合、適切な説明でコードをコメントアウトする会社で働いていたので、後の開発者は同じ結果で同じ変更を試みてください。確かに、これは他の場所(バージョンコントロール、プロジェクトのドキュメント)で文書化することができますが、それを書いてみると、関心はアクセシビリティです。誰かが利用可能なすべてのドキュメントを最初にチェックしなかったため、何かが再壊れないようにします。 –

関連する問題