もちろんクラスを表す巨大な入力フォームがあると仮定します。この入力をクラスのインスタンスにロードする必要があります。この入力には明らかに(いくつかの非常に複雑な検証)チェックが含まれており、明らかにロジックレイヤーにはすでにそれらの入力検証が含まれています。問題は、私がGUIで何をしているのかということです。
非常に醜い方法で、GUIでこれらすべての検証を書き直す必要がありますか?
または、ロジックレイヤーでいくつかの静的メソッドを記述し、GUIとロジックレイヤーでそれらのメソッドを使用する必要がありますが、それでも自分自身を検証する複製を作成します(最初にGUIがそれ自体を検証し、次にロジックが送信されたものを検証します)。
または、GUIが正常であると想定し、ロジックレイヤーを使用する関連コードをtryブロックで囲み、例外がスローされた場合は、何かが正しくないことをユーザーに通知します(ユーザーに何を知る機会を与えずに)それは)
または、例外を公開する必要があります。その方法で、パラメータ、クラス、名前空間の名前を公開しますが、おそらく彼は理解できません。
または、すべてのエラーに対して特別な例外クラスを作成する必要があります。この方法で、問題が何であるかをユーザーに正確に通知しますが、おそらく数百の可能な例外を作成します。
または、一般的な例外に分離する必要があります。列挙型にはエラーの正確な内容が記述されており、それらの例外をキャッチします。列挙型をチェックすることで、問題の正確な内容をユーザーに通知しますが、不必要な例外をすべてキャッチすることでアプリを重くします。時間。
または、ロジックレイヤーの入力を検証し、GUIでのみチェックする(誰かが私にこれを提供した、これは私の考えではない、私に叫ばないでください:D)必要があります(私は絶対に恐ろしいようです)解決策:D)
そしてもっと重要な質問-私はそのようなことをどこで学ぶべきですか?通常、私の本能はかなり良いですが、私は不必要に車輪を発明したくありません..(あなたが毎日爆撃したそのような基本的なもののための慣習がすでにあると確信しています)。
どうもありがとうございます!