基于Java聊天系统设计(含源文件)
歡迎添加微信互相交流學(xué)習(xí)哦!
項(xiàng)目源碼:https://gitee.com/oklongmm/biye
Java聊天系統(tǒng)詳細(xì)設(shè)計(jì)
1 引言
1.1編寫目的?
? ? ?
? ? ? ?聊天系統(tǒng)詳細(xì)設(shè)計(jì)是設(shè)計(jì)的第三個(gè)階段,這個(gè)階段的主要任務(wù)是在聊天概要設(shè)計(jì)的基礎(chǔ)上,對(duì)概要設(shè)計(jì)中產(chǎn)生的功能模塊進(jìn)行過程描述,設(shè)計(jì)功能模塊的內(nèi)部細(xì)節(jié),包括數(shù)據(jù)結(jié)構(gòu)和算法,為編寫源代碼提供必要的說明。
? ? ? ?概要設(shè)計(jì)解決了軟件系統(tǒng)總體設(shè)計(jì)問題,包括整體軟件系統(tǒng)的結(jié)構(gòu),功能模塊的劃分,模塊功能和模塊間的聯(lián)系等,詳細(xì)設(shè)計(jì)則是要解決如何實(shí)現(xiàn)各個(gè)模塊的內(nèi)部功能,及模塊設(shè)計(jì),具體的說,模塊設(shè)計(jì)就是為已經(jīng)產(chǎn)生的聊天系統(tǒng)各個(gè)子系統(tǒng)設(shè)計(jì)詳細(xì)的算法,但這并不等同于系統(tǒng)實(shí)現(xiàn)階段用具體語言編碼,它只是對(duì)實(shí)現(xiàn)細(xì)節(jié)做精確的描述,這樣編碼階段就可以將詳細(xì)中對(duì)功能實(shí)現(xiàn)的描述,直接翻譯,轉(zhuǎn)化為用某種程序設(shè)計(jì)語言寫的程序。
1.2 背景
? ?根據(jù)山東科技大學(xué)教學(xué)要求,實(shí)現(xiàn)理論與實(shí)踐相結(jié)合的辦學(xué)理念,培養(yǎng)21世紀(jì)高素質(zhì)人才,校方安排了與操作系統(tǒng)課程相關(guān)的課程設(shè)計(jì)。
1.3 定義
1. 項(xiàng)目名稱 ?:Java聊天系統(tǒng)?
2. 項(xiàng)目提出者:山東科技大學(xué)
3. 項(xiàng)目開發(fā)者:三個(gè)臭皮匠小組
4. 用戶 ? ? ?:聊天群
5. 運(yùn)行環(huán)境 ?:XP, win7,win8 unix操作平臺(tái)
6. 開發(fā)平臺(tái) ?:Eclipse 、Java?
7.Eclipse:軟件開發(fā)工具,J2EE可視化開發(fā)平臺(tái)。
8.Java :面向?qū)ο箝_發(fā)語言。
1.4 參考資料?
? [1]《軟件工程實(shí)驗(yàn)指導(dǎo)書》清華大學(xué)出版社 2003
? [2]王珊,薩師煊編著《數(shù)據(jù)庫系統(tǒng)概論》高等教育出版社 2006
? [3]錢樂秋編著《軟件工程》 清華大學(xué)出版社 2007
? [4]張海藩編著《軟件工程導(dǎo)論》 清華大學(xué)出版社 2008
? [5]湯子瀛編著《計(jì)算機(jī)操作系統(tǒng)》第三版 西安電子科技大學(xué)出版社 2007
2.總體設(shè)計(jì)?
2.1 ?需求概要?
(1)用戶注冊(cè)模塊:
? ? ?對(duì)于有意使用本產(chǎn)品的用戶首先要登陸我官網(wǎng)并打開相關(guān)的賬戶注冊(cè)鏈接,進(jìn)入賬戶注冊(cè)頁面。根據(jù)相關(guān)提示操作:輸入賬戶名,密碼,確認(rèn)密碼,注冊(cè)郵箱等(詳細(xì)內(nèi)容請(qǐng)到官網(wǎng)查詢),在填寫完相關(guān)信息后點(diǎn)擊“注冊(cè)”,會(huì)提示用戶注冊(cè)成功,并會(huì)給啟用注冊(cè)郵箱發(fā)送注冊(cè)成功激活鏈接,用戶只有通過打開郵箱激活成功以后才能登陸并使用本聊天軟件(sisi)。
(2)客戶端下載模塊:
對(duì)天已經(jīng)成功注冊(cè)并激活的用戶只需要下載本聊天軟件客戶端,下載成功后打開并成功安裝即可使用。
(3)用記登陸模塊:
用打開sisi聊天工具,會(huì)看到簡(jiǎn)潔美觀的登陸界面,界面是有本聊天工具的LOG并提示用戶輸入已經(jīng)注冊(cè)成功的賬號(hào)和密碼,輸入完成后只需要點(diǎn)擊下方的“確認(rèn)”按鈕即可成功登陸本聊天軟件。用戶還可以點(diǎn)擊“取消”按鈕取消登陸。
? ? 同時(shí)登陸界面還有“保存密碼”“自動(dòng)登陸”“登陸狀態(tài)”等功能按鈕,用戶可以根據(jù)自己的需求自己選擇。
對(duì)于還沒有注冊(cè)的用戶也可以點(diǎn)擊右下角“注冊(cè)賬號(hào)”按鈕進(jìn)入我官方注冊(cè)網(wǎng)站進(jìn)行賬號(hào)注冊(cè)。
(4)主界面功能模塊:
? ??
? ? 本聊天工具為用戶提供了非常豐富的功能選擇如:皮膚更換,狀態(tài)選擇,天氣情況,天氣預(yù)報(bào),等級(jí)顯示,聯(lián)系人搜索,功能設(shè)置,好友分類,好友刪除功能,私聊世界,群聊天地(根據(jù)不同的用戶需求我們可以增加更多的功能以供不同的用戶使用)
(5)私聊世界模塊:
? ??
用戶使用本軟件時(shí)只需要點(diǎn)擊聊天對(duì)象的頭像即可進(jìn)入私聊界面,在私聊界面中我們?yōu)橛脩籼峁┤缦碌幕竟δ?#xff1a;文字聊天功能,視頻聊天功能,單語音聊天功能,文件傳輸功能,遠(yuǎn)程協(xié)助功能,應(yīng)用程序功能,在文字聊天界面中我們提供給了用戶有:字體選擇工具欄,表情選擇工具欄,窗口抖動(dòng)功能,圖片發(fā)送工具欄,屏幕截圖工具欄,聊天記錄功能(更多功能會(huì)根據(jù)用戶的需求和我們的調(diào)查在以后的軟件開發(fā)中加入)
(6)群聊天地模塊:
? ? 用戶如要使用群聊功能只需在主界面打開群聊功能就可使用,本軟件可讓用戶最多可以建立3個(gè)群,并可以邀請(qǐng)好友加入自己建立的聊天群,也以加入別人的聊天群,并所有與用戶相關(guān)的群都在用戶的群聊天地顯示出來,用戶只需要打開要進(jìn)行群聊的群號(hào)即可進(jìn)入群聊功能界面。
? ? 在群聊界面中本軟件為用戶提供了如下功能:群通訊錄,群共享功能,群設(shè)置功能,備注名修改功能,群語音功能,群視頻功能,字體選擇功能,頭像選擇功能,表情發(fā)送工具欄,圖片發(fā)送工具欄,群消息記錄功能,刪除群成員功能,退出群功能等等。
2.2軟件結(jié)構(gòu)
? ??
? ? 各個(gè)模塊之間的關(guān)系已由概要設(shè)計(jì)給出。
? ??
2.2.1客戶端系統(tǒng)詳細(xì)設(shè)計(jì)圖
2.2.1.1相關(guān)功能具體實(shí)現(xiàn)流程
(1).登錄流程:
? ??
(2)處理好友請(qǐng)求:
?
(3).注冊(cè)流程
?
2.2.2服務(wù)器端系統(tǒng)詳細(xì)設(shè)計(jì)圖
2.2.2.1監(jiān)聽好友消息流程
??
2.2.2.2 服務(wù)器端主要類UML關(guān)系圖
?
聊天室服務(wù)端主要包括7個(gè)文件,它們的功能如下:
(1)ServerListen.java:ServerListen類其父類為Thread,實(shí)現(xiàn)偵聽客戶端的連接,并響應(yīng)用戶登錄的功能,函數(shù)run實(shí)現(xiàn)相應(yīng)的功能,當(dāng)服務(wù)器啟動(dòng)時(shí)就會(huì)創(chuàng)建偵聽線程,并調(diào)用該類的start函數(shù)開始運(yùn)行線程,而start函數(shù)又會(huì)調(diào)用run函數(shù)來實(shí)現(xiàn)。
(2)ServerReceiveThread.java:該類是實(shí)現(xiàn)接受客戶端的信息的功能,該類主要功能在run函數(shù)中實(shí)現(xiàn),當(dāng)偵聽線程接收到用戶登錄請(qǐng)求后就會(huì)為該用戶創(chuàng)建一個(gè)獨(dú)立的線程并調(diào)用該類的的start函數(shù),開始運(yùn)行線程而start函數(shù)又會(huì)調(diào)用run函數(shù),真正操作在run函數(shù)中進(jìn)行.成員函數(shù)sendToAll,實(shí)現(xiàn)向所有在線用戶轉(zhuǎn)發(fā)聊天信息功能在該函數(shù)中遍歷用戶鏈表依次像所有用戶轉(zhuǎn)發(fā)聊天信息。添加成員函數(shù)sendUerList,實(shí)現(xiàn)向所有在線用戶發(fā)送用戶列表的功能,在該函數(shù)中遍歷用戶鏈表,依次向所有在線用戶發(fā)送用戶鏈表。
總結(jié)
以上是生活随笔為你收集整理的基于Java聊天系统设计(含源文件)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 汇知考轻松职称计算机辅导软件,汇知考轻松
- 下一篇: 软件验收标准和验收方法_卫生间防水验收标