2010-09-27 69 views
1

我正在開發用於網絡聊天的桌面客戶端應用程序。與icq,pidgin,skype等類似的東西。網絡聊天客戶端的設計模式

客戶端應用程序通過POST和GET與服務器進行通信。

客戶端應用程序有以下方法:

  • 登錄
  • 註銷
  • loadFriendList
  • SearchUser
  • AddFriend
  • SendMessage函數
  • LoadMessages

我想爲這個winforms應用程序使用設計模式。我是模式中的新手,我需要關於哪種設計模式適用於此應用程序的建議。

對不起,我的英文。有關如何使用設計模式組織應用程序代碼的任何建議?

謝謝大家

回答

0

這個問題是多一點寬闊/含糊,所以我會根據回覆信息回答。

您可以使用消息泵類型模式,類似於Win32的操作方式,通常您可以通過switch語句處理消息。儘管如果它變得太大,我會把實際的邏輯放在單獨的方法中,並且讓這個單一的方法調用適當的方法。

更多「C#-esque」的另一個模式是使用事件,每個消息類型一個。除了單個消息類型之外,您還可以添加將被解僱的通用MessageReceived事件。

+0

不錯,我也在尋找聊天應用程序設計建議atm。這是可擴展的嗎? – BRampersad 2011-08-26 03:25:00

0

你也可以使用狀態模式。一個客戶會有很多州。例。初始(註銷)將轉換爲登錄狀態。雖然登錄您可以執行諸如發送消息加載消息等操作。爲了更好地瞭解,您可以在網上搜索state pattern,您會發現很多示例。