1、“.....,正在启动服务器线程,设置房间有效初始化服务器端用户名列表启动服务器正在创建服务器端的客户端的连接,服务器端的客户端连接服务器,,启动客户端接受消息线程等待服务器端密码消息正在验证,需要密码服务段客户端,不需要输入密码不需要密码向服务器端发送密码消息,如果不需要密码,则发送空密码等待接受完所有的用户名,创建房间成功,出现系统错要,它不是任意的模型......”。
2、“.....主要的功能都能体现出来。在软件的设计中,要注意横向和纵向的展开。对于横向展开,就要将个大的软件划分为各个小的子系统,然后分别在对子系统进行设计。纵向展开,即将系统划分成多层。例如,该软件将整个系统划分几个小的子系统,对各个子系统进行开发,这样有助于开发人员的掌握控制。将各个子系统划分为个层次,顶层是界面,中间层是应用程序,底层是通信层。这样做,开发人员就能够做到化整为零,从抽象到具体,各个击破......”。
3、“.....不是依据来区分对方的,而是根据名来区分的,这比较符合人的思维,在些需要根据名称来通信的软件中,利用通信比较合适。利用的广播功能时,在下,不需要设置网络控制块的名字号当然设置也无关紧要,而在其它的系统,等,需要设置名字号,否则出现系统。若调用个的通信函数,则在其回调函数中,不宜再调用通信函数,否则出现死锁状态。若是非得调用,则可以以线程的方式调用。对于多线程的设计,线程的创建和调用不是很难......”。
4、“.....这里的同步包括线程之间在逻辑上的先后顺序和访问共享变量的先后顺序。对于逻辑上的同步,可以用中的事件对象来同步,而对于访问公共变量的同步,可以用中的临界区变量来同步。在聊天通信的过程中,若是建立多条连接,则要消耗更多的系统资源,但同时能够并行宏观的通信,好像双方之间有多条通道。也可以只建立条连接,此时好像是串行通信,此时系统可以定义多条消息类型,由应用程序来解释消息......”。
5、“.....实现聊天的消息传送和控制消息的传送,但要浪费时间。这也体现了计算中的时间和空间互换的原则。对于具有定规模的软件,相对结构化开发方法,宜采用面向对象的软件开发方法。采用面向对象的软件开发方法,符合人的思维习惯,开发人员能够比较容易的掌握整个系统的情况,易设计,易修改。对于该聊天工具来说,任何端都可以作为服务器,也可以是客户端,也就是说服务器是动态创建的,不是静止的......”。
6、“.....这样提供了很大的灵活性,在没有连入因特网的局域网内也可以相互通信。语音聊天是该软件的大特色。语音聊天的关键之处在于语音的采集,压缩,传送,解压缩,回放上。而如何保证语音的质量是个难点。该软件采用多个缓冲区来循环存储语音信息,以寻求语音质量达到最佳。恰当的利用缓冲区,可以有效的解决服务器拥塞问题。在该软件中,多处服务中客户端与服务器之间加了层缓冲区,形成多个生产者个消费者的模式......”。
7、“.....服务器不断的从缓冲区中消费消息。这也是时间和空间互换的个例子。对于文件传送中速度较慢问题的解决,可以通过增加发送线程和接受线程的数量来解决问题,对于大文件的传送,增加内存缓冲区,次性的从文件中读取更多的字节,待到接收缓冲区满时再将缓冲区中的内容写入文件,通过这些措施,可以增加文件的传送速度。以上的结论只是实践过程所感,真正要完成该软件还需要开发人员的细心和耐心......”。
8、“.....该项目中还存在着些问题,特说明如下总体来说,该软件的界面不是很理想,要想达到实用化,还需要在界面设计这块美化界面。每个用户都有个头像,如何动态的显示头像图片,根据图片文件显示还没有完成。对于如何选择不同的协议,我还没有完成,我也认为没有必要。语音聊天还有待于进步的优化,提高语音质量。文件传输有待于进步的优化,提高传输速度。系统存在些不稳定因素,有时系统会崩溃......”。
9、“.....我的建议有由于该软件对用户的信息不作保存,所以,如果想实用化该软件,需要给该软件增加个数据库服务器,用来保存用户信息。可以增加语音录音的功能。可以增加视频聊天的功能。致谢这学期初,我和另外两个同学要完成本科的毕业设计,冯博琴老师和夏秦老师作为我的毕业设计指导老师,从开始为我提出该软件的计划,对该软件提出了整体上的要求和些功能要求,同时给出了该软件中的要用到的技术......”。
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。