メッセージボックスを論理から切り離すための最良の方法を見つけるために、私は適切にユニットテストをすることができます。今私はちょうど私がメッセージボックスのために後でスタブすることができる別個のヘルパークラス(C#)を作ればそれが十分であるかどうか疑問に思っていました。例えば:メッセージボックスとユニットテスト
static class messageBoxHelper
{
public static void msgBoxAlg(string message, string title, MessageBoxButtons buttons, MessageBoxIcon icons, bool show)
{
if (show)
{
MessageBox.Show(message, title, buttons, icons);
}
}
はその後、毎回私は私がだけではなく、messagebox.show(...)のmessageboxHelper/msgBoxAlg(...)を使用したいメッセージボックスを使用する必要があるだろう。ブール・ショーを使ってテスト中にそれを有効または無効にすることができました。
これが「正しい方法」であるかどうかは不思議です。これを正しく行うためのより簡単な方法がありますか?私はメッセージボックスを捨てることはできません。ユーザーに "重要な"情報を中継します( "このウィンドウを閉じますか?" YES/NOなど)。また、私は適切なソフトウェアエンジニアリングを使用していないこともあります。私はメッセージボックスを自分のビジネスロジックから切り離すべきですか?
ありがとう、非常に明確な説明! –
私は抽象として "IDialogService"という言葉が大好きです! – Samuel