2017-04-12 6 views
0

マルチモジュールウェブアプリケーションを処理するための最良のデザインパターンを知りたいと思います。マルチモジュールウェブアプリケーションに適したデザインパターン

例: - REST Webサービスプロジェクトは、SMSを送信するさまざまな種類の要求を処理します。リクエストの

タイプ

  1. 個々のSMSトリガ
  2. プロモーションSMSトリガ
  3. インタラクティブSMSトリガ
  4. スケジュールSMSトリガ

送信するSMSのさまざまな種類がありますし、各タイプには、SMSを起動する前に適用される独自のビジネスロジックがあります。それを処理するのに適したデザインパターンは ですか?

提案やリンクをご提供ください。プロジェクトの設計に大きな助けになります。

答えて

0

あなたのアプリケーションの唯一のスコープであれば、それを単純なものにして、不必要にバンチデザインパターンをオーバーエンジニアリングしたり実装したりしないでください。

あなたはビジネスロジックがSMSタイプに基づいてどのように異なるかを言及していないSMS

をトリガする前に送信され、それぞれのタイプが適用されるように、独自の ビジネスロジックを持つべきSMSのさまざまな種類があります。したがって、最も簡単な形式では、次のように始めることができます:

public interface ISMSService 
{ 
    void Send(); 
} 

// One class for each SMS type 
public class IndividualSMS : ISMSService 
{ 
    public IndividualSMS(<paramters>) { 
     // <parameters> can be different based on SMS type 
    } 

    public void Send() { 
     // Implement SMS type specific logic 
    } 
} 

public class SMSManager { 
    private readonly ISMSService smsService; 

    // Inject ISMSService implementation from calling code 
    public SMSManager(ISMSService smsService) { 
     this.smsService = smsService; 
    } 

    public void SendSMS() { 
     this.smsService.Send(); 
    } 
} 

// Client code 
var individualSMS = new IndividualSMS(<parameters>); // Use DI container for resolving 
var smsManager = new SMSManager(individualSMS); 
関連する問題