分享一个C#编写简单的聊天程序(详细介绍)

2019-12-30 11:38:16王旭

 

与此对应,服务端应该作出反应:

 

注销(远程被动)
主路径 可选路径
1.自动显示远程用户已经断开连接。  

 

注意到一点:当远程主动注销时,它采取的动作为上面的“本地主动”,本地采取的动作则为这里的“远程被动”。

至此,应用程序的功能分析和用例编写就告一段落了,通过上面这些表格,之后再继续编写程序变得容易了许多。另外还需要记得,用例只能为你提供一个操作步骤的指导,在实现的过程中,因为技术等方面的原因,可能还会有少量的修改。如果修改量很大,可以重新修改用例;如果修改量不大,那么就可以直接编码。这是一个迭代的过程,也没有一定的标准,总之是以高效和合适为标准。

2.分析与设计

我们已经很清楚地知道了程序需要做些什么,尽管现在还不知道该如何去做。我们甚至可以编写出这个程序所需要的接口,以后编写代码的时候,我们只要去实现这些接口就可以了。这也符合面向接口编程的原则。另外我们注意到,尽管这是一个聊天程序,但是却可以明确地划分为两部分,一部分发送消息,一部分接收消息。另外注意上面标识为自动的语句,它们暗示这个操作需要通过事件的通知机制来完成。关于委托和事件,可以参考这两篇文章:

  • C#中的委托和事件 - 委托和事件的入门文章,同时捎带讲述了Observer设计模式和.NET的事件模型
  • C#中的委托和事件(续) - 委托和事件更深入的一些问题,包括异常、超时的处理,以及使用委托来异步调用方法。