我有一个关于设计模式的问题。我如何知道哪种设计模式对某些模块是有用的?
我正在创建一个视频会议系统,在这个系统中,对于数据库连接,我在数据库的同时对一个实例使用了Singleton设计模式。
现在,我正在为我必须遵循的设计模式创建聊天和视频(一对多)会议模块。
我应该为此声明哪些类和接口。
Class Database
Class Chat
Class TextChat Extends Chat
Class VideoChat Extends Chat
这是正确的方式来声明模块吗?
我将在接下来的六个月内构建一个应用程序,它将用作双向视频会议系统,以及来回共享一些其他数据。我可能会使用某种相对昂贵的USB网络摄像头,而且我知道USB Video Class设备标准,这似乎是可行的。
现在,我可以使用什么来针对这一点(或其他方向)进行编程?操作系统并不那么重要,因为它还没有决定(将选择以满足整体需求),语言也不重要。网络将是VPN,最坏情况是256kbps对称。理想情况下,它也可以处理编码和压缩,但基本上我只是在寻找某种开始研究的起点(到目前为止,我刚刚发现了TAPI和H.323,不确定最好的编程方法)。
我使用的是Lubuntu,我的视频卡是GeForce FX 5200。我从软件中心安装了一些驱动程序,他们安装成功了,但是PC仍然很慢,比如移动窗口的时候,我看到了一些工件,这让我觉得视频卡安装得不正确。此外,在线视频也有很大的滞后。我知道我的电脑是旧的,但我不能忍受的事实,我不能观看视频在线。
如何验证视频卡是否已安装并与Lubuntu一起正常工作?