0

UI、ビジネスロジック、WCF、IoCに関する記事をたくさん読んだことがありますが、それでも1つ欠けていることがあります。WinFormsアプリケーションとコンソールアプリを作成します。コンソールアプリは頭脳です。これで、すべてのクライアント/サーバーアーキテクチャで、クライアントはサーバーを「認識」し、要求を送信して回答を取得します。私の質問は次のとおりです。

1)ユーザーがUIの存在を知らない場合、コンソールアプリケーションはどのようにしてユーザーにメッセージを表示できますか?UIは、xミリ秒ごとにメッセージをチェックしてプールする必要がありますか?それは良いアプローチですか?

2)UIフォームにティッカー価格を表示する必要がある場合、たとえば株価は常に変化しますか?200ミリ秒ごとにコンソールアプリにティッカー価格を要求する必要がありますか?または、コンソールアプリケーションにコールバック関数を登録して、コンソールアプリケーションが呼び出すことができるようにしますか?しかし、今ではUIがサーバーになっているのではないでしょうか。

3)アプリケーションに端末機能(telnet cliなど)を追加したい場合はどうなりますか?どのように設計すればよいですか?クライアントとしてのTelnetサーバーとサーバーとしてのコンソールアプリケーション?それを達成するのに役立つデザインはありますか?タクシー?たくさんの人に聞いてみたら、誰も使っていないようですが…そうですか?

ありがとう、Eyal

4

3 に答える 3

2

プログラムは、ある UI を別の UI に置き換えることができるように設計する必要があります。プログラムは、ユーザーが見るインターフェイスとは独立してロジック機能を持つことができる必要があります。MVCObserverのパターンを見てみましょう。

あなたのプログラムの良い尺度の 1 つは、ユーザーが利用できるようにするインターフェイス [API 呼び出し、コンソール ベースの GUI、コンソール ベースのインターフェイス、ネット インターフェイス、Web] を使用することです。インターフェイスで非常に柔軟にすることについて。インターフェイスは、アプリケーションのロジックやデータストアとは何の関係もないようにすることをお勧めします。

株式ティッカー: 200 ミリ秒ごと、または変更時に新しいイベントをブロードキャストするオブザーバー パターンを用意します。ティッカー ビューは、これらのイベントのサブスクライバーになります。

于 2009-12-19T20:57:37.107 に答える
1

「頭脳」を図書館にしてみませんか?WinForms インターフェイスとコンソール アプリはどちらもユーザー インターフェイスであり、ロジックから分離する必要があります。これにより、機能へのアクセスが容易になり、イベントをサブスクライブすることもできます。

于 2009-12-19T20:57:21.447 に答える