0

これは、すぐに答えるにはかなり大きな質問かもしれません。説明したい人への多くの称賛。本への参照/他のウェブサイト/YouTube のリンク/何か良いもので結構です。

Visual Studio を使用して C# でプログラミングするコツをつかんでいます。そして、私のプログラムはますます大きく複雑になっています。私はそれを構造化するために非常に努力していますが、毎回それを台無しにしてしまうことに気づきます. 関数、変数、guievents などすべてを同じ形式で。最後に、ctrl+f 機能がないと何も見つかりません。

複数のフォームで使用される変数は別のフォームに保存され、より多くの概要が作成されます。静的値はプログラムの先頭で定義され、switch/case ステートメントなどで使用されます。

それでも; すべてを台無しにするのは非常に簡単です。プログラムにもっと構造が欲しいのですが、優れた構造化プログラミングの例が実際にはありません。メインフォームに保持する標準とは何か、または別のフォームに入れる必要があるものはよくわかりません。このトピックに関する情報は大歓迎です:)

4

3 に答える 3

3

Steve McConnell の Code Completeを購入することを強くお勧めします。

Amazon ページからのスニペット:

  • 複雑さを最小限に抑え、創造性を最大限に高める設計
  • 共同開発のメリットを享受する
  • 防御的プログラミング手法を適用して、エラーを減らして洗い流す
  • コードをリファクタリング (または進化) する機会を利用し、安全に実行する
  • プロジェクトに適した建設方法を使用する
  • 問題を迅速かつ効果的にデバッグする
  • 重要な建設問題を早期かつ正確に解決する
  • プロジェクトの最初、中間、最後に品質を組み込む
于 2012-10-22T08:15:25.197 に答える
0

また、コードをよりオブジェクト指向にすることでメリットが得られる場合があります。これにより、関連するコードが独自の.csファイル内の個別のクラスにラップされます。開始するには、カスタムデバイスに接続していると言います。このデバイスを表すクラスはありますか?コード内の変数とメソッドの名前を見てください-それらには名詞が含まれていますか?もしそうなら、それらもクラスにすることを検討してください。動詞を使用する場合、これはクラスに追加するメソッドを提案します。

したがって、InitialiseDeviceというメソッドがある場合、これは、Initialiseメソッドを持つDeviceというクラスを示唆しています。

明らかに、オブジェクト指向プログラミングにはさらに多くのことがあり、それに関する本もたくさんあります-あなたはこれが好きかもしれません:Beginning C#Object-OrientedProgramming

于 2012-10-22T08:36:32.190 に答える
0

複数のフォームで共有される変数については、1 つの CS ファイルにまとめて参照しないでください。これにより、それらが 1 つの場所に集中化され、保守が容易になります。

ビジネスとデータベースのアクセス ロジックを別々の CS ファイルに配置し、フォームがビジネス レイヤーにアクセスし、ビジネス レイヤーがデータベース レイヤーにアクセスするように使用することをお勧めします。

アプリケーションを好きなように構成できます。CS ファイルが存在する場所 (それを含むフォルダーなど) は、コードに影響しません。Visual Studio は、それが含まれるフォルダーと一致するように名前空間を自動的に設定しますが、これはオーバーライドできます。

于 2012-10-22T08:16:35.113 に答える