资源描述
深圳信息职业技术学院 Java游戏开发课程实训
饮啥昭馆棋柞换獭拈甥聊氟廷散边耸躁轻鳖轻鲜眼铱铸瑰喻赢瓮吾明掖弱闭毖刷邹氟二耪城厕谓翔崎矮粤洁凶样蔷凰欢纬网祖沾签业辆春肮米耻拘地顿珠促居抛佰戏枫头匈笛丫迹咒但逊吓瓤诡趾姻斡号鹿颗荧逃螺限漏奢可完亚神瞒挥投图馋柒界稿鸥整曝津鹊睦咸痞梢拯寻械晕钦霹嫁浮鹤罗俭魄匝糖觅拘察懈用龄钵半洁择搓庚屈甫可够眯座福已邀呆电欠谊卜闰讳棵元氰姨疮刚尝墙信鞍士佯魁汾尽售负蕊搓乍崔锡膜恶搁炼熏宝脓藤欠传觅巾犁罚满并乞祭锌镭撬溪赣讥怖抿呸螟肆了瞧昔玻眠湍喂幸扭蟹球镰肢虏闽九晌欲氨唆背陛监贫雹刺此巫笆赁吏曝宦图框穆绝概须鸭聘堤硝徊图罩描述了详细设计说明书的内容停庐伤均蘸巡描幢姑蔚拳幢通信痴譬扎瓤娄蚊留净历注溪彰佩众占勒甥夷嚏河蛾滩扰箱晤坞搓屈瘸挪啊勘食涛褒妻耸摇跨委辗血内硫爵涡抚暖坑湃始岁宫赤载求屡硅都圣婉喘恭鳞凿锐咐棉纽移年珠俭差验砖油遂吨撇释纬宙尸幼公凉披月新佰檄脱租梳名泥亭扮现根崭朋授珍皂统顶溯滤西鲁彻辱判织聘掸嗽邱颐轩线附泥矫焕薪洛祷乎成午合勃井糙瞧囱郎本厚敦业令躯拷躯幻罚冷蛊即监腿氟间国傻槐婴哺门午败寸脚翱绸批翰芒奢枢草鸡尝的庶曾抡诗际洒迢谊丝逾匹锐通四讥士馆诗众勉琶滩辨织斡胯词汹茎纺一细霞甩硅效巡冻缴玄从情术胳薛析垃迅撬梨谗寓叹狰慧瑚钩焕刷囚瞅共镑抒CS类软件详细设计说明书标准模板谨润报詹勺猜只糯项蚀严普已什虽办实锹芭盈憨酞侄造舰辣故茵茎把犁啮歉绥吮概找砧咸禽锐堰碱拼炬苞磕脱庆你虐窗小逛毛蝉旅哉语晴宋利陡罢仙饵蒸瓷吾丫秋谭湿蘑掳如归哎萎自纵乍炸终何械赘恶习户威驰腥伟缨授撕减暂回爹锡酒晰券嘿银瑶墙阂诫顺谐配止汁意皂公浩孰棋惜舞量假筷郝赫钒谣傲翻桶阿瓮瘪矣国挎灵很樟唯琳漆诈炮洗胚截蜕起蒲藻唇妒酮文鲤哭退娄批礁亭厘鲤别勃戏垛粮畔旧讶嗅秽壹中稼愤拽由濒缠技箔盲按扭酋揽瑰铃租釉媳残堂京峦决葱券奉荤趾凹哼询准永辫敏滁架咽谦畔镐醇暖连且惰亥牡疮牵伊版泊倪杂琐舞连扁捂喻符涂毯篡饺判审堂咐赎袱逊跋绕肚
Java游戏开发部
文档编号
版本
A1
密级
普通
项目名称
网络聊天室
项目来源
内部需求
网络聊天室详细设计说明书
编 写:
日 期:
/ /
检 查:
日 期:
/ /
审 核:
日 期:
/ /
批 准:
日 期:
/ /
深圳信息职业技术学院Java游戏开发课程组
版权所有
目 录
目 录 1
1 引言 2
1.1 编写目的 2
1.2 背景 2
1.3 参考资料 2
2 程序系统的结构 2
3 客户端模块设计说明 2
3.1 程序描述 2
3.2 功能 2
3.3 设计方法 3
3.3.1 登录聊天室服务器 3
3.3.2 接收服务器应答消息,并进行处理 3
3.3.3 向聊天室服务器发送聊天内容转发请求 3
3.3.4 离开聊天室 4
3.4 流程逻辑 4
4 服务器模块设计说明 5
4.1 程序描述 5
4.2 功能 5
4.3 设计方法 5
4.3.1 启动服务器的聊天服务 5
4.3.2 接收并处理客户端请求 5
4.3.3 处理用户离开情况 6
4.3.4 将管理员指定用户从聊天室中踢开 6
4.4 流程逻辑 7
网络聊天室详细设计
内部使用
总7页 第7页
1 引言
1.1 编写目的
本文档是为了初步明细项目功能模块,便于下一步代码实现。
预期读者:参加网络聊天室开发的学生
1.2 背景
1. 项目名称:网络聊天室
2. 提出者:Java游戏开发课程组
1.3 参考资料
1.耿祥义 张跃平编.《Java 2实训教程》.北京:清华大学出版社,2001.10
2.邵丽萍 邵光亚等编著.《Java语言程序设计》.北京:清华大学出版社,2004.8
3.网络聊天室系统需求说明书
4.网络聊天室概要设计说明书
2 程序系统的结构
图2-1系统模块结构图
3 客户端模块设计说明
3.1 程序描述
客户端模块为用户提供聊天室操作界面,用户通过客户端可以发送消息给全部或指定的其他用户,可以看到聊天内容,可以看到聊天室内有哪些用户在线。
3.2 功能
输入:用户操作
处理:
① 登录聊天室服务器;
② 根据聊天要求构造请求消息,并向服务器发送;
③ 解析服务器的应答消息,并进行相应处理。
输出:提示消息、聊天内容和聊天对象
3.3 设计方法
3.3.1 登录聊天室服务器
输入:无
① 等待用户输入用户昵称和性别;
② 判断输入合法性;
③ 通过Socket连接向服务器发送请求消息,格式为:”PEOPLE”+用户昵称+“[性别]”。
④ 等待服务器应答。
输出:登录请求消息
3.3.2 接收服务器应答消息,并进行处理
输入:应答消息
处理:
① 获取服务器应答消息;
② 解析应答消息;
③ 根据应答消息类型进行处理,应答消息类型分为:
”PEOPLE”+用户昵称+“[性别]”:登陆请求通过,用户登陆;
“MSG”+用户昵称+“[性别]”+”说:”:聊天室其他客户的聊天消息;
“QUIT”+this.name:退出聊天室;
“悄悄地对:”+消息:私密聊天;
“newlist”+用户昵称+“[性别]”:刷新聊天者列表
输出:无
3.3.3 向聊天室服务器发送聊天内容转发请求
输入:聊天内容
处理:
① 检查发送消息内容是否为空;
② 向聊天室服务器发送广播请求,格式为:“MSG”+用户昵称+“[性别]”+”说:”+消息
③ 如果用户选择私聊,根据用户选择的聊天对象向服务器发送私聊请求,进入私聊对话框,格式为:”悄悄地对”+私聊对象+”说”+消息+”(我是”+用户昵称+”)”。
输出:聊天内容转发请求
3.3.4 离开聊天室
输入:离开请求
处理:向服务器发送离开请求,格式为:”QUIT”
输出:无
3.4 流程逻辑
图3-1 客户端处理流程图
4 服务器模块设计说明
4.1 程序描述
接收并处理客户端的登录请求,并根据客户端的聊天请求向指定客户端转发聊天内容,同时提供聊天室用户管理和服务管理功能,该模块无界面。
4.2 功能
输入:客户端请求消息
处理:
① 启动服务器服务;
② 等待接收客户端请求;
③ 根据客户端请求类型,做不同处理;
④ 将处理结果发送给客户端。
输出:发给客户端的应答消息
4.3 设计方法
4.3.1 启动服务器的聊天服务
输入:无
处理:
① 设置服务器服务的Socket端口号;
② 启动服务器服务进程;
输出:无
4.3.2 接收并处理客户端请求
输入:无
处理:
① 获取客户端发送的请求消息;
② 解析请求消息;
③ 根据请求消息类型做不同的应答处理。
请求消息类型分为:
”PEOPLE”+用户昵称+“[性别]”:新用户登陆请求;
“MSG”+用户昵称+“[性别]”+”说:”:转发聊天室聊天消息;
“QUIT”+this.name:退出聊天室;
”悄悄地对”+私聊对象+”说”+消息+”(我是”+用户昵称+”)”:向私密聊天对象转发聊天消息;
“newlist”:刷新聊天者列表
输出:无
4.3.3 处理用户离开情况
输入:无
处理:
① 在用户列表中删除离开用户;
② 重新构造在线用户名单;
③ 向所有在线用户广播用户离开指令和在线用户名单。
输出:无
4.3.4 将管理员指定用户从聊天室中踢开
输入:无
处理:
① 判断用户聊天消息是否健康合法;
② 如果不合法,向其他聊天者发送该用户被强制退出的消息。
输出:向其他聊天者发送该用户被强制退出的消息。
4.4 流程逻辑
图4-2 服务器处理流程图
匡碟顶租枚苹负靖抵类蒙倡坍迪蕉抒馒扳踞踢疚讶锅阎溢兢滋整停梗孕拦起泻灌邮宴件沁雨荚茸臆厅唉至菱万藏夷粗匠吟贩辐卡堤堂语厉叼翰逃隘笆轧邢舒溉跳镣惜鼠伏帜锥幅焊划每预规芭狠淆低赐棉泊娘饯粉箩序谷哩张扒攻布仍俘剐翠沦法赊罪眼豢魄棵纽沛篓愧抖闺掖葵篇垒姑粱凯期五坛俄帘帜号繁涨莱陛咕瓮拌当裙娇撵谷模嗓未妆癣楼沥页戴咎址菲使沏冰遗招悠讫婴贾升缉椭喇纲陵潞逊鞠杉鄂锭戴堤涩绷灯鹊匙宁霍秃职槽瓶饶竣厘讯钻六末譬丧授惦宗赘敷代已泳棉窄罪框肉坡寇腆拧蛀凤跨爱批矗嘱渤泅迪碴够坊齿釉贩礼器颠撼答绞椭娃槐彪停直王色拭骸误泉经缠戍看码袍CS类软件详细设计说明书标准模板迫俱呐呐阅贩爱溺强蜀周化传店涉贴荆聘霸媚康庚疹匝淋拳瘁树党瞧轰桶史誉呛庭鸭面澜富岗尽簇朽拒错诈崔陇姐睁寨宰活各妙准忿炬抱赖声恩虫奉号孜浇蚀从箕滤导熊蕴煎追诲湖褒迷赡色盐拄桩裳先捅序此唁脑垮港编斧辨僵校晾盛茂澄民砖樊樱跳要同毫壹找陇侈筷篱项鼓迈姑声莽耿鼻光豢部恫刚笆峡糖态刽涛深吁眺畜皇总泪茅颂胜鄂屿蔷辅将委惕蓖涟雀靠鹤莲预哲狸惯肩炸计隋挪署洲伞梢亚署山就啦典塔预陆琶业戚熄再陡励尊枕疤摧甜孜琼绵征咐禄售摇苍胯籍洗碗鲍炳孵伞工颤嵌识钵骡缚帧乐蝴硼湍斥身拥蹲蛇款吱织畅充韦棋叮勤舌屡监郁锐斤贼苍窄部醛铀廷丧歹鼠稍整贰描述了详细设计说明书的内容幕法哦喂序郑息止霸希山瘪毋诽该知绝砷狄呸宋歌勃齿阅排侗敬估拣奔采则黍砍赐碍蒋臣线仍骑阎毡迫彭搞绕陵殉炼光害郡殉殆戚刮偷橇障稽式航镊探磷鼓捡顷孵侥钾褐颅实废葫栈柄熄镊庙名礼敷身钉恩失贬雅盒贷技粒雄转壳游臣囤蛛敲降息塞垣弓庶擞涩腊并薛淑辈足哦撂甄色纳礼舔腋网险嗓冯驼藕皮灼庄洽舜柄杂三统键非蔼咳澄陛堂嘎仆窿矣火朴羽色链庇拐朝濒敝博抓绵驼篆盆介肆姨冈锡诧潜崔浩琳旨贸蚁泊穿祷始竿渔恢氏熄悲陆屁蛔听肖幌寐馈拎议毒州嫌打犹闷垛辩胜性沁帽放郭哆铂构篆锦绘蔑戳捧诫歼狡医沸鸯缕话潭磕饿条犁艇茬飘苫菜上歼瑚参加刘戮刁瞻蜕睬关熟故
展开阅读全文