基于TcpIP协议的网络通讯设计(服务器端).doc
《基于TcpIP协议的网络通讯设计(服务器端).doc》由会员分享,可在线阅读,更多相关《基于TcpIP协议的网络通讯设计(服务器端).doc(66页珍藏版)》请在沃文网上搜索。
1、摘 要本论文设计的目的是基于TCP/IP点对点通讯技术,以VB为平台设计并实现了一个基于C/S(客户端/服务器)模式的五子棋网络游戏的总体设计方法。本设计主要是建构服务器端,采用TCP/IP网络协议,使用VB提供的Winsock控件来实现与客户端的网络通信功能。主要功能是使客户端能连接到服务器端,双方可以通过网络对战,并且能够自动判断胜负。特点是支持双方网上聊天功能,还增添了悔棋、复盘、保存棋局/聊天记录等功能。关键词:Winsock;VB;C/S工作模式;五子棋;TCP/IPAbstractThe thesis is aimed to achieve a C/S (Client/Server
2、) mode backgammon online game based on the point to point communication technology by TCP/IP, with the Microsoft Visual Basic software platform. This design main to build a server-side that applied the TCP/IP protocol as the network protocol and used the tool of Visual Basic, Winsock, to realize the
3、 network communication. The functions of the design contain Client and Server side can be connected to each other and plays the backgammon games online, then it can auto judge the victory or defeat. The designs feature is to support chats online, undo, and replay, save games and chat records.Keyword
4、s: Winsock; Microsoft Visual Basic; Client/Server mode; backgammon game; TCP/IP目录1.绪论11.1 五子棋的简介11.2 五子棋的历史与现状11.3 五子棋游戏开发意义12. 开发工具的选择32.1 开发背景与现状32.2 Visual Basic33. 网络通讯的基本原理83.1 Tcp/IP 体系结构83.1.1 Tcp/IP简介83.1.2 Tcp/IP特点83.1.3 Tcp/IP协议的应用93.2 Winsock102. 需求分析与总体设计122.1 需求分析122.1.1 五子棋功能需求122.1.2
5、五子棋的规则122.2 总体分析123. 五子棋游戏设计143.1 设计原理143.2 通讯流程143.3 算法描述163.3.1 棋盘绘制算法163.3.2 判断输赢算法173.3.3 下棋决策算法193.3.4 聊天记录管理算法203.3.5 下棋记录管理算法233.4 客户端/服务器端数据格式定义244. 游戏界面设计254.1 登陆界面设计254.2 下棋界面设计265. 软件测试295.1 问题的发现295.2 问题的解决296. 总结与体会306.1 总结306.2 体会307. 参考文献328. 致谢33附录一 程序源代码341.绪论1.1 五子棋的简介众所周知,五子棋是我国古代
6、的、传统的黑白棋种之一,大约在南北朝时期随围棋一起先后传入朝鲜、日本等地。五子棋国际上正式称“连珠”,五子棋简单易学而又富有趣味,为大众喜爱。然而,五子棋又包含深奥的哲理和技巧,尤其是随着国际职业连珠运动的发展和竞赛规则的逐步完善,技法和战术有了很大发展,因此已不再是简单的游戏。五子棋与围棋棋子相似,围棋像军团作战,博大精深;五子棋则短兵相接,凶险复杂。五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋既有现代休闲的明显特征“短、平、快”,又有古典哲学的高深学问“阴阳易理”;它既有简单易学的特性,为广大人民群众所喜闻乐见,又有深奥的技巧和高水平的国际性比赛;它的棋文化源渊
7、流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。1.2 五子棋的历史与现状20世纪90年代,五子棋在我国民间迅速普及,爱好者群体不断扩大,水平不断提高,地区间的交流活动逐步增多,一些五子棋组织应运而生,许多地区举办了五子棋比赛活动。五子棋作为一个智力运动项目,它的最大价值就是为社会大多数民众休闲娱乐服务,在构建和谐社会中发挥应有的作用。随着网络时代的到来,网络五子棋游戏也随之兴起,它凭借健康、方便、互动性强、益智等诸多优点,成为一些现代人的休闲娱乐方式。1.3 五子棋游戏开发意义进入二十一世纪,电脑和网络越来越普及,五子棋这个传统娱
8、乐项目被网络数字化也是必然趋势。由于电脑的人工智能,越来越多的人能够和电脑或者联机进行对战,感受高手的思维方式和棋艺,使自己的棋术越来越精湛。由于网络的普及,高手可以通过游戏的网络对战系统上网和真人进行对弈,让人们在工作闲暇之余能够享受游戏的快乐,而且五子棋作为一款传统游戏,它是老少皆宜,潜在玩家很多,其市场前景非常广阔。在当今电脑网络密布的世界当中,一个简单高效的局域网游戏工具是如此的具有实用性,所以我们应当重视对它的相关研究与开发。2. 开发工具的选择2.1 开发背景与现状在很早以前五子棋软件就已经被开发出来了,当时的五子棋软件仅提供了“人机模式”与“双人模式”。“人机模式”是指,人与计算
9、机进行对弈,计算机按照事先编写好的算法程序来进行下棋;“双人模式”是指,两个人通过交替使用同一台计算机来进行下棋。无论是选择哪一种模式,所有的操作都必须在同一台计算机上来往完成,棋局无法在异地计算机之间来进行,故而也叫单机版五子棋软件。随着计算机网络的迅猛发展,异地计算机之间的通信变得十分便捷。这也为异地间的用户通过网络来进行下棋提供了可能。网络五子棋软件利用TCP/IP协议,在异地的玩家之间建立起TCP连接,并用它来交换棋局的各种数据信息。所以,网络五子棋软件在下棋以前必须要对相关的网络参数进行设置,才能实现玩家双方的成功连接。连接成功后,玩家双方轮流下棋,并将每一步下棋的信息通过网络传送给
10、对方,使得双方棋盘上的棋子保持一致,并且提供了“互动聊天”“悔棋”、“复盘”和“保存棋局”等功能。2.2 Visual Basic1. Visual Basic的发展 Basic是英文Beginners All-Purpose Symbol Instruction Code (初学者通用符号指令代码)的缩写,在高级语言中占有重要的地位,是专门为初学者设计的计算机语言。第一代Basic于1964年在Dartmouth 学院由John Kemeny 和Thomas设计,由于它的语法很接近人类所使用的自然语言和数学表达式,只有十几条语句,简单易用,因此受到广大计算机初学者的喜爱,很快就得到广泛的应用
11、,第二代Basic是在20世纪70年代中期到80年代中期出现的,其功能有了较大的扩充,应用范围更加广泛,主要有GWBasic和Microsoft公司的Basic(MS-Basic);第三代Basic是在80年代中期出现的结构化的True Basic、Quick Basic、Turbo Basic和Qbasic;第四代就是Visual Basic.Visual Basic(简称VB)是美国Microsoft公司推出的、专门针对32位Windows操作系统的程序设计语言,它从Basic发展到Visual Basic,经历了二十多年的历程。Visual指的是开发图形用户界面(GUI)的方法,Visu
12、al Basic在原有Basic语言的基础上进一步发展,至今包含了数百条语句、函数及关键字,其中很多都和Windows GUI有直接关系。专业人员可以用Visual Basic实现其他任何Windows编程语言的功能,而初学者只要掌握几个关键词,就可以建立实用的应用程序。Visual Basic 1.0版是1991年Microsoft公司推出的基于窗口的可视化开发工具,当时它的功能相对较少,也有一定的缺陷。但Microsoft公司凭借其强大的技术优势,经过不断努力,于1993年推出了Visual Basic 3.0,这个版本已初具规模,并进入了实用阶段,利用它可以快速创建图形用户界面和多媒体等
13、应用程序。1995年推出的Visual Basic 4.0提供了强大的数据库管理功能,使之成为管理信息系统(MIS,Management Information System)的重要开发工具。而在1998年推出的Visual Basic 6.0,则在开发环境和功能上都做了很大的完善、扩充和增强。实践证明,Visual Basic以其简单易学、功能强大和面向对象编程的优势,已经发展为快速应用程序开发(RAD,Rapid Application Development)工具的代表,受到广大专业程序设计者和计算机爱好者的普遍欢迎。2. Visual Basic应用程序的基本特点在可视化编程上,Vis
14、ual Basic已成为新一代程序设计语言的杰出代表。与传统的语言相比,Visual Basic在许多方面都有重要的改革和突破,Visual Basic有以下基本特点:(1)提供了好学易用的应用程序集成开发环境Visual Basic的集成开发环境是在Windows平台上实现的。在这个环境中,开发人员可以进行界面设计、代码编写和程序调试,直至可以把应用程序编译成可执行程序,在脱离Visual Basic的设计环境下直接运行。这个开发环境支持整个面向对象开发的全过程,具有极大的方便性和高效性。(2)面向对象的可视化设计工具在VB开发环境中,应用了面向对象的程序设计方法,即把程序和数据封装起来,视
15、为一个对象工具。每个对象都是可视的,程序员在设计时,只需要根据设计界面的要求,利用现有的对象工具,直接在屏幕上设置不同的对象(如窗口、菜单、按钮或滚动条等),并为每个对象设置属性即可,而不需要编写大量的代码去描述界面元素的外观和位置(这也就是所说的“所见即所得”)。通过对这些对象进行属性的设置和调整,就能改变对象的外观及动作的方式,这样用户可以方便地设计出美观、友好地界面,从而简化了界面设计的方法,大大提高了编程的效率。(3)事件驱动的编程机制在设计好了用户界面后,就可以编写相应的程序了。事件驱动是增强程序图形界面交互性的主要方法,是指利用用户的动作或行为控制程序运行的流向。用户的每一个动作或
16、操作行为都可以产生一个事件(如用户的键盘或鼠标操作、系统消息、程序触发等),每个事件都可驱动一段程序的运行,程序员只需编写响应用户动作的代码即可,这样编写的程序代码短、易编写、易维护,且对象之间的动作顺序可由程序的使用者灵活控制。(4)结构化的程序设计语言传统编程方法是面向过程的机制,程序是按事先设计的程序流程来运行的。程序间要求有严谨的逻辑关系,且程序长、编写难、维护难。而VB系统提供了丰富的数据类型、众多的内部函数、子程序、事件子程序和自定义函数等模块,各个子程序模块之间彼此独立,也可以相互联系,从而形成了结构化程序,简单易学。(5)支持多种数据库访问系统Visual Basic可以利用数
17、据控制或通过ODBC访问数据库,获得后台的数据源支持,从而使Visual Basic前台的界面与数据处理功能结合起来,扩大Visual Basic的应用范围。Visual Basic可以访问的数据库主要有Microsoft SQL Server、Access、dBASE、FoxBASE和Paradox等,也可以访问Microsoft Excel、Lotus1-2-3等多种电子表格。Visual Basic还可以利用对象的链接与嵌入技术(OLE),开发出具有图、文、声、像、Web等对象合成的应用程序,并可以方便地使用标准地Active部件,调用标准的接口,用于Web或其他支持这一技术的过程中。V
18、isual Basic采用了部件编程的思想,在Visual Basic中创建的部件可以自用,也可以在其他开发环境(如VC)中使用,还可以引用其他开发工具建立的部件。由于具有接口继承性,所以通过部件编程,可以在Visual Basic中实现代码重用。在数据库应用方面,增加了ADO功能,Visual Basic不仅可以支持本地数据库,而且还可以链接远程数据服务器,大大增强了数据处理能力;在Internet应用方面,Visual Basic可以通过文档或程序访问Internet,创建Internet服务器应用程序,支持DHTML(动态HTML技术)和Web程序发布等。(6)OLE和Active技术的
19、应用OLE(Object Link&Embed)技术是指对象的链接与嵌入技术,能够用于开发集声音、图像、动画、字处理和Web对象等于一体的应用程序。Active技术可以使开发人员摆脱特定语言的束缚,方便地使用标准地Active部件,调用标准地接口,实现特定的功能。OLE技术是VB的核心,Active是OLE的发展。(7)增强的网络功能Visual Basic最重要的特征之一,是提供了DHTML设计工具。这种技术可以使Web页面设计者动态地创建和编辑页面,使用户能够在VB中开发出多功能地网络应用软件。(8)多个应用程序向导VB的应用程序向导可以自动创建不同类型、不同功能的应用程序,其中包括应用程
20、序向导、安装向导、数据对象向导、数据窗体向导、IIS应用程序和DHTML等(9)完备的联机帮助系统与Windows环境下的软件一样,在VB中随时可以利用菜单功能键得到所需要的帮助信息。帮助窗口的信息和示例代码可以进行复制、粘贴,为用户学习和使用VB提供了捷径。3. Visual Basic 6.0Visual Basic 6.0是在Visual Basic 5.0的基础上发展起来的,是Visual Basic 5.0的升级版本。较之Visual Basic 4.0,Visual Basic 5.0的更新面很广,更新幅度也很大。从Visual Basic 5.0开始,ActiveX就一炮打响,并
21、增加了真正的可执行的本地代码编译,比Visual Basic 4.0的伪代码编译快20倍。而相比Visual Basic5.0,Visual Basic 6.0也增加了很多值得称道的新增功能。Visual Basic 6.0现有以下三个版本:(1)学习版(Leaning Edition):学习版主要是针对Visual Basic的初学者而设计的,可以开发基于Windows的应用程序,包括创建Windows应用程序所需的内部控件以及数据网络、数据绑定等控件,也为用户提供了联机帮助系统。对界面要求不高、计算量不大的项目,学习版是可以胜任的。此外,学习版经济实惠、易学易用,是初学Visual Bas
22、ic用户的良好选择。(2)专业版(Professional Edition):专业版是专业人员提供了一整套功能完备的开发工具,该版本包括学习版中的全部内容,又增加了立体控件、动画按钮、通信控件、进度条、工具条及Internet控件等开发应用程序所需要的全套工具,同时还加强了创建ActiveX部件应用程序和ActiveX部件等方面的功能。开发在单机上运行的应用程序,专业版是足够的。它的使用对象是具有一定Visual Basic编程经验的软件开发人员,但初学者从专业版入手也不会遇到多大困难。(3)企业版(Enterprise Edition):企业版使专业编程人员能够以组的形式开发功能强大的分布式
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
15 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 TcpIP 协议 网络通讯 设计 服务器端