0

Visual Studioは、Windows.Formsコントロールを作成および設計するときに、多くのコードを生成するのに十分親切です。また、そのほとんどを#regionステートメントで囲みます。新しいバージョンでは、部分クラスを使用して、生成されたコードと手動で作成されたコードを分離します。開発者は、特定の領域でのみコードを編集することになっています。

しかし、私たちが好きな方法でこれに違反することを妨げるものは何もありません。デザイナーから行った可能性のある手動編集、またはデザイナーが触れていない領域での手動編集で問題ありません。ただし、他の種類の編集にはフラグを付けたいと思います。

誰かがこれを行うことができるユーティリティを知っていますか?StyleCopのルールはおそらく?私は主に、C#、Windows.Forms、およびVisual Studio 2003、2005、および2008の組み合わせに必要です。

4

2 に答える 2

2

最近では、デザイナーコードは.Designer.csファイルにまとめられるはずです。開発者がそれに触れる必要があることは非常にまれなはずです。残念ながら、コードが本当に設計者によって生成されたことを確認する方法はわかりません。なんらかのハッシュが含まれていれば便利ですが、私が知る限りではありません...

「デザイナーファイルを編集しないでください」と言うのが今ではどれほど簡単かを考えると、本当に別のシステムが必要ですか?特定の地域から離れる必要があるわけではありません。ファイル全体が範囲外です。

于 2009-09-23T09:25:59.557 に答える
1

開発者がこのコードを変更することを許可されるべきではないのはなぜですか?彼らが機能するコードを書くことができるなら、彼らはそれをすることを許可されるべきです。動作するコードを記述できない場合は、トレーニングまたは解雇する必要があるとしましょう。

「動作する」の意味を「実行時およびデザイナで動作する」に拡張する必要があります。それで、それについて何が問題になっていますか?

今日のGUIデザイナーはそれほど制限的ではなく、人間によって書かれたコードを「理解する」ことで良い仕事をしています。


また、実際に生成されたコードもあります。たとえば、いくつかのxml仕様、リソースなどによって生成されたコードです。このコードはビルド時に生成されるため、変更された場合、アプリケーションがビルドされるたびにこれらの変更は元に戻されます。

デザイナーは、この種の実際のコードジェネレーターではありません。これらは一種の「コーディングヘルパー」であり、開発者がコードを入力するよりも速く書くのに役立ちます。しかし、実際には同じ種類のコードを手動で書くことは可能ですが、デザイナーの能力に自分自身を制限することは合理的な保守性の決定です。 。

于 2009-09-23T09:41:28.493 に答える