国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統(tǒng) > 正文

多功能聊天室-項目規(guī)劃實現(xiàn)圖

2024-06-28 13:24:43
字體:
供稿:網(wǎng)友
多功能聊天室-項目規(guī)劃實現(xiàn)圖

網(wǎng)絡編程項目規(guī)劃

最近在練習一個項目吧,大概給6天的時間來完成它,其中涉及到了數(shù)據(jù)庫的知識,網(wǎng)絡編程,linux C等等,大考驗的時刻到了!我知道PM們的項目規(guī)劃圖絕對比我的高大上,但是咱也不能沒有自信對不?因此,我開始先分析我的項目它有什么功能需求,需求分析完成了,OK,那么項目應該大體上,又是靠什么來實現(xiàn)的呢?這是一個最值得深究的問題!又有人說,那不是得用代碼來實現(xiàn)嗎?等等,那樣你得寫到什么時候?因而我們絕對不是先用代碼去實現(xiàn)功能,而是把功能提取出來,了解他實現(xiàn)的過程!重要的是什么?嘿嘿,讓我來告訴大家,最重要的是數(shù)據(jù)的協(xié)議,沒有好的數(shù)據(jù)協(xié)議,我們將會面臨的是無盡的BUG,因而協(xié)議是本文最終目的,當然非常希望大家通過留言,或者發(fā)郵件的方式來指出更加優(yōu)化的地方,可以共同進步才是真的牛人!

附上我的郵箱:samuel_wnb@live.com

功能需求:

1、注冊

2、登陸

3、查看登陸用戶

4、私聊

5、群發(fā)信息

6、客戶端退出保存數(shù)據(jù)

7、服務器要備份數(shù)據(jù)

8、root權限

踢出聊天室

禁言

解禁

注銷

9、客戶端發(fā)送表情

10、添加常用語

以上是我項目的功能,下面是我對功能的具體分析,涉及到網(wǎng)絡編程,嗯,在做項目的過程中,想辦法抽出一定時間來寫一些關于調(diào)用網(wǎng)絡的API的博文,希望大家到時關注,當然我會將我所做的項目公之于眾,開源的

  1. 注冊:
    1. C :獲取用戶名&密碼&cmd
    2. Send struct server
    3. S :Check msg

      檢查數(shù)據(jù)庫,有重名 返回0

      檢查數(shù)據(jù)庫,可注冊 返回1

  1. 登陸:
    1. C :獲取用戶名&密碼&cmd
    2. Send struct server

3、S :Check msg

檢查數(shù)據(jù)庫,無此用戶 返回0

檢查數(shù)據(jù)庫,有此用戶 (1)、匹配密碼,不正確 返回1 (2)、正確返回2

  1. 查看登陸用戶:
    1. C :獲取cmd
    2. 向server發(fā)送cmd
    3. Server 發(fā)送 return 用戶數(shù)
    4. S 向 C寫 用戶名 寫 用戶數(shù) 次數(shù)
    5. C向S讀 用戶名 讀 用戶數(shù) 次數(shù)

  2. 私聊

    1、C :寫入 name 寫入 toname msg

    2、send data to server

    3、S:尋找toname 和在線情況 在線 且名字正確 返回 1

    不在線 返回 0

    查無此人 返回 -1

    1. S:根據(jù)數(shù)據(jù)庫所得 向toname發(fā)送 該數(shù)據(jù)協(xié)議

  1. 群發(fā)

    1、C :寫入 name msg

    2、send data to server

    3、S:對比現(xiàn)在在線用戶 發(fā)送信息

  2. 保存數(shù)據(jù)

    Sqlite3數(shù)據(jù)庫

    二維表關系

    chatdata

Id

名字

聊天記錄

User

Id

用戶名

密碼

Online

Id

用戶名

套接字

是否禁言

Serverdata

Id

登陸時間

  1. Root

    踢出聊天室 從online 刪除

    禁言 寫判斷 每次登陸都要測試是否被禁言

    解禁 寫禁言命令

    注銷 直接從user 刪除 除非再注冊

  2. 客戶端發(fā)送表情和添加常用語

    跟私聊一樣!

    經(jīng)過上面的分析于是我決定使用下面我自己的數(shù)據(jù)結(jié)構體

數(shù)據(jù)協(xié)議

Struct message

{

Char name[100];//用戶名

Char passwd[100];//密碼

Int cmd; //命令

Int revert;//返回值

Char toname[100];//私聊對象

Char msg[100];//私聊內(nèi)容

Int sockfd;//socket客戶端套接字

};


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 承德县| 乡城县| 永昌县| 新竹市| 崇阳县| 咸丰县| 襄樊市| 宁蒗| 鹰潭市| 水富县| 报价| 泊头市| 绥德县| 福海县| 莱芜市| 明水县| 屏山县| 滕州市| 临漳县| 县级市| 新野县| 磴口县| 新和县| 安溪县| 顺义区| 宝丰县| 镇巴县| 澜沧| 越西县| 吉首市| 且末县| 北京市| 肃北| 鹿泉市| 大埔县| 榆树市| 揭西县| 冷水江市| 铜梁县| 乌恰县| 阿拉善左旗|