版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 《計(jì)算機(jī)綜合課程設(shè)計(jì)》</p><p><b> 課程設(shè)計(jì)</b></p><p> 題 目: 即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p> 二0一七 年 六 月 三十 日</p><p> 即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2、</p><p><b> 摘要</b></p><p> 近年來,隨著Internet的飛速發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)得到了越來越廣泛的應(yīng)用,并且已經(jīng)逐步走進(jìn)千家萬戶。自邁入信息時(shí)代以來,距離已經(jīng)不再是人們之間聯(lián)絡(luò)溝通的障礙,也正因?yàn)槿绱?,人們?duì)溝通交流的需求和依賴也越來越強(qiáng)烈,各行各業(yè)對(duì)信息交流的要求也越來越高。如今,通過各種即時(shí)通信軟件,人們已經(jīng)可以在足不出戶的情況下
3、,與遠(yuǎn)距離甚至世界各地的人進(jìn)行實(shí)時(shí)的聊天交流,這樣的交流不僅滿足了人們對(duì)交流溝通的需求,同時(shí)也給人與人之間的交流帶來了極大的便捷和大量的經(jīng)濟(jì)節(jié)省。因此,即時(shí)通信(Instant Messaging)在人們的生活工作和學(xué)習(xí)中得到了更廣泛的應(yīng)用。</p><p> 目前,已經(jīng)有不少即時(shí)通信軟件在社會(huì)公眾中流行,像騰訊QQ,新浪微博等,都是國內(nèi)人們所熟知的知名流行即時(shí)通信軟件,其技術(shù)方面也都處于國際領(lǐng)先水平。同時(shí),由
4、于即時(shí)通信軟件的便利,其應(yīng)用已經(jīng)由最初的簡單的聊天交友得到了巨大的拓展。適應(yīng)各種場合的各式即時(shí)通信軟件也開始出現(xiàn)在軟件市場上,這就包括了一些與企業(yè)管理相關(guān)的即時(shí)通信軟件,一個(gè)具有企業(yè)自己特色的集信息管理和即時(shí)通信為一體的內(nèi)部應(yīng)用軟件,能夠使一個(gè)企業(yè)或者團(tuán)隊(duì)更像一個(gè)整體,同時(shí)也能夠給企業(yè)的管理和信息交流帶來極大的便利,在一定程度上提高工作效率。</p><p> 同樣的,對(duì)于軟件設(shè)計(jì)與開發(fā)的行業(yè)來說,過去的那種僅
5、適用于PC機(jī)上的應(yīng)用程序的開發(fā)已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足市場的多樣化的需求,網(wǎng)絡(luò)程序的廣泛應(yīng)用和廣大需求使學(xué)習(xí)與掌握與網(wǎng)絡(luò)相關(guān)的編程技術(shù)顯得尤為重要。</p><p> 本論文將結(jié)合一個(gè)具體的局域網(wǎng)即時(shí)通信系統(tǒng)的開發(fā)編寫,以現(xiàn)有的各種技術(shù),介紹講解網(wǎng)絡(luò)IM軟件開發(fā)中的重要知識(shí),并討論其中關(guān)鍵環(huán)節(jié)的技術(shù)問題和各種解決方案和設(shè)計(jì)策略。</p><p> 關(guān)鍵詞:即時(shí)通信; 信息交流; IM軟件; 網(wǎng)
6、絡(luò)編程</p><p> Design and implementation of instant messenger system</p><p><b> Abstract</b></p><p> In recent years, with the rapid development of Internet, computer ne
7、twork has been more and more widely used, and has gradually entered the tens of thousands of households. Since entering the information age, the distance between people is no longer the communication obstacles, beca
8、use of this, people on the communication demand and dependence are increasingly strong, demand for the exchange of information is more and more high. Now, through a variety of instant messaging software, people can
9、st</p><p> At present, there have been a lot of popular instant messaging software, in the public like Tencent QQ, Sina and micro-blog, are well-known domestic popular instant messaging software known as, i
10、ts technology has reached the international advanced level. At the same time, due to the convenience of instant messenger software, its application has been greatly expanded by the initial simple chatting and dating
11、. To adapt to all kinds of instant communication software on various occasions also began </p><p> Similarly, for the design and development of software industry, application development past that appl
12、ies only to the PC machine on the market can not meet the diversified needs, widely used and the demand of network program to learn and master the network related programming technology is very important.</p><
13、p> This paper will combine the development of instant communication system of a specific LAN written in various existing techniques, introduce important knowledge in software development of IM network, the key techni
14、cal problems and solutions and discuss and design strategies.</p><p> Keyword: Nitrides;MOCVD;LED;Photoluminescence;RBS/channeling;Optical absorption</p><p><b> 目錄</b></p>&
15、lt;p><b> 摘要2</b></p><p> Abstract3</p><p><b> 1. 問題描述4</b></p><p> 1.1. 題目內(nèi)容4</p><p> 1.2. 數(shù)據(jù)要求5</p><p> 2. 分析與設(shè)計(jì)5&l
16、t;/p><p> 2.1. 功能描述5</p><p> 2.2. 程序流程圖的設(shè)計(jì)5</p><p> 2.3. 數(shù)據(jù)庫結(jié)構(gòu)描述6</p><p> 2.4. 測試數(shù)據(jù)、運(yùn)行界面圖及期望結(jié)果7</p><p> 2.5. 模塊結(jié)果及各個(gè)模塊的實(shí)現(xiàn)方法描述10</p><p>
17、<b> 3. 源代碼11</b></p><p> 3.1. 服務(wù)器端11</p><p> 3.2. 客戶端14</p><p><b> 4. 總結(jié)16</b></p><p> 5. 參考文獻(xiàn)16</p><p><b> 問題描述&l
18、t;/b></p><p><b> 題目內(nèi)容</b></p><p> 即時(shí)通訊是指為網(wǎng)絡(luò)在線用戶提供通過客戶端和服務(wù)器度端軟件進(jìn)行實(shí)時(shí)信息交流的服務(wù),即時(shí)通訊軟件提供了兩臺(tái)主機(jī)間的網(wǎng)絡(luò)高層協(xié)議。本文內(nèi)容即為即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。</p><p><b> 數(shù)據(jù)要求</b></p><
19、p> 1、實(shí)現(xiàn)實(shí)驗(yàn)室局域網(wǎng)內(nèi)的即時(shí)通訊軟件,在線的兩臺(tái)主機(jī)之間可以互 發(fā)文字信息、音頻信息,可以傳遞文件;</p><p> 2、軟件自動(dòng)掃描網(wǎng)內(nèi)用戶并加入好友組群,用戶名以實(shí)驗(yàn)桌號(hào)定義;</p><p> 3、所有用戶間可以共享文件,實(shí)現(xiàn)方式可以是將文件拉入組群或設(shè)立</p><p><b> 共享空間自行下載。</b>&
20、lt;/p><p><b> 分析與設(shè)計(jì)</b></p><p><b> 功能描述</b></p><p> 本系統(tǒng)的使用對(duì)象為個(gè)人用戶,要完成的主要功能為實(shí)時(shí)聊天會(huì)話功能,以及與之伴隨的用戶信息管理,并包括網(wǎng)絡(luò)即時(shí)通信的相關(guān)通行功能。在擴(kuò)展方面還應(yīng)當(dāng)加入固定群組會(huì)話與臨時(shí)會(huì)話組等功能,進(jìn)階功能還包括文件傳輸,語音、視
21、頻對(duì)話等高階功能。對(duì)于一個(gè)網(wǎng)絡(luò)即時(shí)通信系統(tǒng)而言,由于本系統(tǒng)采用基于TCP的集中式C/S結(jié)構(gòu),必須具備一些與網(wǎng)絡(luò)連接相關(guān)的通用功能,無論系統(tǒng)的最終用途是什么,這些功能都是必不可少的,具體包括:(1)客戶端登陸(2)新用戶注冊(3)找回、修改密碼(4)登錄設(shè)置(5)發(fā)送接受消息(6)聊天記錄(7)查找添加刪除好友(8)傳送文件等。</p><p><b> 程序流程圖的設(shè)計(jì)</b></p
22、><p> 在SOCKET網(wǎng)絡(luò)編程中,socket函數(shù)通常是以阻塞方式進(jìn)行的,即在執(zhí)行數(shù)據(jù)收發(fā)過程的時(shí)候,程序線程會(huì)在收發(fā)過程完成之前阻塞,只有在完成了當(dāng)前數(shù)據(jù)收發(fā)工作后,才會(huì)執(zhí)行其他指令,這樣一來,接收數(shù)據(jù)、發(fā)送數(shù)據(jù)、處理數(shù)據(jù)、邏輯過程等都無法同步進(jìn)行,在頻繁的網(wǎng)絡(luò)數(shù)據(jù)傳輸過程中,各種傳輸工作以及處理工作都有可能同時(shí)發(fā)生,無法同步顯然會(huì)造成用戶使用過程中過多的等待,給用戶操作帶來極大的不良感覺。</p>
23、;<p> 在這樣的情況下,必須通過自行創(chuàng)建額外線程來輔助程序主線程的工作,以多線程同步的方法來解決阻塞方式數(shù)據(jù)傳輸帶來的不良影響。為此,除了主線程外,每一次數(shù)據(jù)接收、數(shù)據(jù)發(fā)送、數(shù)據(jù)處理等工作都將分別單獨(dú)占用一個(gè)線程,以此來完成數(shù)據(jù)接收發(fā)送以及處理的同步工作。</p><p> 圖1-2 服務(wù)端管理網(wǎng)絡(luò)連接的流程圖</p><p><b> 數(shù)據(jù)庫結(jié)構(gòu)描述&
24、lt;/b></p><p> 在該系統(tǒng)中,需要在服務(wù)器中存儲(chǔ)的數(shù)據(jù)信息主要包括用戶信息和用戶關(guān)系信息兩個(gè)方面,在用戶信息方面,又包含個(gè)人信息和操作信息兩個(gè)方面,其中,個(gè)人信息是用戶可以在獲得登陸帳號(hào)后自行修改的。下面將結(jié)合本系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì),介紹系統(tǒng)中包含的主要用戶信息數(shù)據(jù)。</p><p> 測試數(shù)據(jù)、運(yùn)行界面圖及期望結(jié)果</p><p><b&
25、gt; 首先開啟服務(wù)器程序</b></p><p><b> 注冊登錄頁:</b></p><p><b> 主頁、聊天面板:</b></p><p><b> 查找、添加好友:</b></p><p><b> 文件傳送:</b>&
26、lt;/p><p> 模塊結(jié)果及各個(gè)模塊的實(shí)現(xiàn)方法描述</p><p><b> 登陸認(rèn)證功能的實(shí)現(xiàn)</b></p><p> (1)用戶在界面中輸入用戶名,密碼,并點(diǎn)擊登陸按紐,客戶端界面向其邏輯處理層發(fā)送登陸消息。</p><p> ?。?)邏輯層響應(yīng)登陸消息,將用戶名密碼封裝成登陸認(rèn)證包,寫進(jìn)網(wǎng)絡(luò)連接管理對(duì)象的數(shù)
27、據(jù)發(fā)送緩沖區(qū),并發(fā)出連接請(qǐng)求消息。</p><p> ?。?)客戶端網(wǎng)絡(luò)連接管理對(duì)象嘗試進(jìn)行連接。</p><p> ?。?)服務(wù)端的網(wǎng)絡(luò)連接監(jiān)聽模塊發(fā)現(xiàn)新來的連接請(qǐng)求,向服務(wù)端網(wǎng)絡(luò)傳輸模塊發(fā)出消息。</p><p> ?。?)服務(wù)端網(wǎng)絡(luò)連接管理模塊暫時(shí)接受該連接請(qǐng)求,并收取其首次發(fā)來的數(shù)據(jù),與數(shù)據(jù)庫中數(shù)據(jù)信息進(jìn)行核對(duì)驗(yàn)證,如果驗(yàn)證失敗,則立即斷開連接,轉(zhuǎn)入(6);
28、如果驗(yàn)證通過,則跳過(6)轉(zhuǎn)到(7)</p><p> (6)驗(yàn)證失敗,客戶端網(wǎng)絡(luò)連接管理對(duì)象發(fā)現(xiàn)連接斷開,向用戶界面發(fā)出錯(cuò)誤信息,界面顯示出錯(cuò)誤提示。</p><p> ?。?)驗(yàn)證成功,服務(wù)器給此連接發(fā)放ID,并將其存入連接隊(duì)列,且根據(jù)數(shù)據(jù)庫中對(duì)應(yīng)的用戶ID與連接管理ID進(jìn)行關(guān)聯(lián),向該連接客戶端發(fā)送連接成功應(yīng)答包。其中包含著該用戶名對(duì)應(yīng)的ID號(hào)。</p><p&g
29、t; 發(fā)送和接收聊天信息的實(shí)現(xiàn)</p><p> (1)用戶打開列表中某其他在線用戶的聊天窗口,輸入信息后點(diǎn)擊發(fā)送。</p><p> ?。?)邏輯層收到事件消息,獲取聊天窗口所對(duì)應(yīng)的用戶信息(ID號(hào))和聊天內(nèi)容。將其封裝為數(shù)據(jù)包寫入網(wǎng)絡(luò)連接管理對(duì)象的發(fā)送緩沖區(qū)內(nèi)并提請(qǐng)SEND事件。</p><p> (3)網(wǎng)絡(luò)連接管理對(duì)象收到SEND消息后將發(fā)送緩沖區(qū)中內(nèi)容
30、發(fā)送出去。</p><p> (4)服務(wù)端網(wǎng)絡(luò)連接收到數(shù)據(jù)包后(接收過程上一章已有詳細(xì)分析),將其送給服務(wù)端邏輯處理層</p><p> ?。?)服務(wù)器邏輯處理層僅解開包頭,得知為聊天信息,從包頭中獲得發(fā)送方和接收方的ID號(hào),并想網(wǎng)絡(luò)傳輸控制模塊發(fā)出相應(yīng)指令。</p><p> ?。?)網(wǎng)絡(luò)傳輸控制模塊在得到指令后,通過MAP中關(guān)聯(lián)信息在連接隊(duì)列中找出接收方ID對(duì)
31、應(yīng)的連接管理對(duì)象,將數(shù)據(jù)復(fù)制入其發(fā)送緩沖區(qū)中進(jìn)行發(fā)送。</p><p> ?。?)接收方客戶端網(wǎng)絡(luò)連接管理對(duì)象收到網(wǎng)絡(luò)數(shù)據(jù)后,通過預(yù)處理包頭得知為聊天信息數(shù)據(jù),并從包頭中獲取了數(shù)據(jù)發(fā)送方ID,將數(shù)據(jù)地址作為聊天消息到來的系統(tǒng)消息發(fā)送給邏輯處理層。</p><p> ?。?)邏輯處理層接收到消息后,根據(jù)數(shù)據(jù)地址將數(shù)據(jù)讀出并解包,得到對(duì)方的聊天信息,并通過對(duì)方ID找到其在界面TREE列表中的對(duì)
32、應(yīng)項(xiàng),向界面發(fā)送指令,告知有來自某項(xiàng)的聊天消息。</p><p> (9)界面處理層根據(jù)邏輯層的指令,完成對(duì)聊天消息到來的處理,在聊天窗口已打開時(shí)激活并顯示新消息,若窗口未打開,則更改對(duì)應(yīng)圖標(biāo)為信息未讀圖標(biāo)。</p><p> 查找和添加好友的實(shí)現(xiàn)</p><p> ?。?)用戶在界面中ID號(hào),并點(diǎn)擊查找按紐,客戶端界面向其邏輯處理層發(fā)送查找消息。</p&
33、gt;<p> ?。?)邏輯層響應(yīng)查找消息,將用戶名密碼封裝成登陸認(rèn)證包,寫進(jìn)網(wǎng)絡(luò)連接管理對(duì)象的數(shù)據(jù)發(fā)送緩沖區(qū),并發(fā)出連接請(qǐng)求消息。</p><p> ?。?)服務(wù)端的網(wǎng)絡(luò)連接監(jiān)聽模塊發(fā)現(xiàn)新來的連接請(qǐng)求,向服務(wù)端網(wǎng)絡(luò)傳輸模塊發(fā)出消息。</p><p> (4)服務(wù)端網(wǎng)絡(luò)連接管理模塊暫時(shí)接受該連接請(qǐng)求,并收取其首次發(fā)來的數(shù)據(jù),與數(shù)據(jù)庫中數(shù)據(jù)信息進(jìn)行查詢并返回查詢結(jié)果。<
34、/p><p><b> 傳送文件的實(shí)現(xiàn)</b></p><p> ?。?)用戶打開列表中某其他在線用戶的聊天窗口,點(diǎn)擊傳送文件按鈕選擇文件。</p><p> (2)邏輯層收到事件消息,獲取聊天窗口所對(duì)應(yīng)的用戶信息(ID號(hào))和文件信息。將其封裝為數(shù)據(jù)包寫入網(wǎng)絡(luò)連接管理對(duì)象的發(fā)送緩沖區(qū)內(nèi)并提請(qǐng)SEND事件。</p><p>
35、; ?。?)接收方客戶端網(wǎng)絡(luò)連接管理對(duì)象收到網(wǎng)絡(luò)數(shù)據(jù)后,通過預(yù)處理包頭得知為聊天信息數(shù)據(jù),并從包頭中獲取了數(shù)據(jù)發(fā)送方ID,彈出彈窗確認(rèn)是否接受文件。</p><p> ?。?)接受端若選擇接受,則接受信息流并寫入本地硬盤;若拒絕則丟棄該包并關(guān)閉連接。</p><p><b> 源代碼</b></p><p><b> 服務(wù)器端&l
36、t;/b></p><p> public class SQLServerProcess extends Thread{</p><p> public SQLServerProcess(PropertyFile propertyFile){</p><p> pf = propertyFile;</p><p> sqlPoo
37、l = new SQLPoolServer(pf);</p><p> /*獲取動(dòng)態(tài)線程池.*/</p><p> threadPool = Executors.newCachedThreadPool();</p><p> setUserOutline();</p><p><b> try {</b><
38、/p><p> serverSocket = new ServerSocket(PORT);</p><p> } catch (IOException e) {</p><p> e.printStackTrace();</p><p> JOptionPane.showMessageDialog(null, PORT + "
39、端口被占用,請(qǐng)停止此端口的服務(wù)再從新啟動(dòng)", "錯(cuò)誤",</p><p> JOptionPane.ERROR_MESSAGE);</p><p> System.exit(0);</p><p><b> }</b></p><p> /*啟動(dòng)垃圾處理*/</p>&
40、lt;p><b> new GC();</b></p><p> new MyTray(sqlPool, threadPool, serverSocket);</p><p><b> start();</b></p><p><b> }</b></p><p>
41、;<b> /**</b></p><p> * 靜態(tài)方法.獲取本機(jī)IP地址.</p><p> * @return String 本機(jī)IP地址的字符串.</p><p><b> * */</b></p><p> public static String getLocalAddres
42、s(){</p><p> String ip = null;</p><p><b> try {</b></p><p> ip = InetAddress.getLocalHost().getHostAddress();</p><p> } catch (UnknownHostException e)
43、{</p><p> return null;</p><p><b> }</b></p><p> return ip;</p><p><b> }</b></p><p><b> /**</b></p><p>
44、; * 服務(wù)器啟動(dòng)時(shí).</p><p> * 將所有用戶設(shè)置為不在線狀態(tài).</p><p><b> * */</b></p><p> private void setUserOutline(){</p><p> /*獲取數(shù)據(jù)庫連接資源*/</p><p> DBSource
45、db = sqlPool.getSQLServer();</p><p> String SQL = "UPDATE USERIPINFO SET STATUS = 0";</p><p><b> try {</b></p><p> Statement stat = db.getStatement();</p
46、><p> db.setAutoCommit(false);</p><p> stat.executeUpdate(SQL);</p><p> db.commit();</p><p> } catch (SQLException e) {</p><p> db.rollback();</p>
47、<p> e.printStackTrace();</p><p><b> }finally{</b></p><p><b> /*釋放資源*/</b></p><p> db.releaseConnection();</p><p><b> }</b&g
48、t;</p><p><b> }</b></p><p><b> @Override</b></p><p> public void run() {</p><p> while (!serverSocket.isClosed()) {</p><p> tr
49、y { /* 監(jiān)聽服務(wù)器端口 */</p><p> threadPool.execute(new ProcessThread(serverSocket.accept()));</p><p> } catch (IOException e) {</p><p> e.printStackTrace();</p><p><b&g
50、t; }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 客戶端</b></p><p> public class ServiceFactory {</p><p>&
51、lt;b> /** 登陸 */</b></p><p> public static final String TASK_LOGIN = "0";</p><p><b> /** 注銷 */</b></p><p> public static final String TASK_LOGOUT =
52、 "1";</p><p> /** 新用戶注冊 */</p><p> public static final String TASK_NEWUSER = "2";</p><p> /** 更新用戶資料 */</p><p> public static final String TASK_
53、UPDATAINFO = "3";</p><p> /** 查看好友資料 */</p><p> public static final String TASK_GETINFO = "4";</p><p> /** 搜索好友 */</p><p> public static final S
54、tring TASK_SEARCH = "5";</p><p> /** 添加好友 */</p><p> public static final String TASK_ADDTION = "6";</p><p> /** 刪除好友 */</p><p> public static fi
55、nal String TASK_REMOVE = "7";</p><p> /** 離線消息 */</p><p> public static final String TASK_LEFTINFO = "8";</p><p> /** 獲取更改密碼 */</p><p> public s
56、tatic final String TASK_PASSWORD = "9";</p><p> /** 其他跟新 */</p><p> public static final String TASK_NORMAL = "10";</p><p> private static final String[] TYPE
57、= { "com.jq.client.protocol.tcp.server.LoginService",</p><p> "com.jq.client.protocol.tcp.server.LogoutService", "com.jq.client.protocol.tcp.server.RegisterService",</p>
58、<p> "com.jq.client.protocol.tcp.server.UpdateInfoService",</p><p> "com.jq.client.protocol.tcp.server.FriendInfoService", "com.jq.client.protocol.tcp.server.SearchService&qu
59、ot;,</p><p> "com.jq.client.protocol.tcp.server.AddtionService", "com.jq.client.protocol.tcp.server.RemoveService",</p><p> "com.jq.client.protocol.tcp.server.LeftInfo
60、Service", "com.jq.client.protocol.tcp.server.PasswordService" };</p><p> public static Service<?, ?> getService(String serviceType, String IP, int port) {</p><p> Class<
61、;?> c;</p><p> Constructor<?> constructor;</p><p><b> try {</b></p><p> c = Class.forName(TYPE[Integer.parseInt(serviceType)]);</p><p> /* 帶參數(shù)的
62、構(gòu)造器. */</p><p> constructor = c.getConstructor(TCPServer.class);</p><p> return (Service<?, ?>) constructor.newInstance(new TCPServer(IP, port));</p><p> } catch (Exception
63、 e) {</p><p> e.printStackTrace();</p><p> return null;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p&g
64、t;<p><b> 總結(jié)</b></p><p> 本論文詳細(xì)的介紹了一個(gè)即時(shí)通信系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)方案,該系統(tǒng)是一個(gè)針對(duì)中小型企業(yè)的集人事管理和內(nèi)部交流與一體的即時(shí)通信系統(tǒng)。在論文中,從系統(tǒng)各個(gè)方面依次闡述其設(shè)計(jì)思想和實(shí)現(xiàn)方案,主要包括了以下幾個(gè)方面的內(nèi)容:</p><p> (1)系統(tǒng)功能的設(shè)計(jì)以及與功能相關(guān)的用戶信息數(shù)據(jù)的設(shè)計(jì),在功能上盡可能
65、作到完善且實(shí)用,在數(shù)據(jù)信息上盡量全面、沒有遺漏。</p><p> (2)充分發(fā)揮面向?qū)ο蟮乃枷?,使系統(tǒng)有一個(gè)良好的結(jié)構(gòu),便于團(tuán)隊(duì)合作開發(fā),同時(shí)也有為后期維護(hù)或擴(kuò)展工作奠定良好的基礎(chǔ)。</p><p> ?。?)良好的協(xié)調(diào)網(wǎng)絡(luò)傳輸與邏輯控制的模塊劃分以及二者的接口設(shè)計(jì),網(wǎng)絡(luò)傳輸控制對(duì)象的設(shè)計(jì)更要能夠適應(yīng)多種網(wǎng)絡(luò)通信應(yīng)用程序,以減少在今后類似項(xiàng)目的開發(fā)中的編碼工作量,避免重復(fù)勞動(dòng)。<
66、/p><p> 在這一次的設(shè)計(jì)開發(fā)工作中,我體會(huì)到了在規(guī)范的實(shí)際開發(fā)工作中,一個(gè)程序的開發(fā)與在學(xué)校中學(xué)習(xí)文化知識(shí)時(shí)的程序開發(fā)有的天壤之別。同時(shí)也讓我認(rèn)識(shí)到了在實(shí)際開發(fā)過程中,影響系統(tǒng)開發(fā)質(zhì)量與效率的絕不僅僅是代碼編寫能力那么簡單,良好的系統(tǒng)模式設(shè)計(jì)、清晰的設(shè)計(jì)思路、合理的模塊或?qū)哟蔚膭澐植攀侵刂兄亍?lt;/p><p><b> 參考文獻(xiàn)</b></p>
67、<p> [1]朱秋成 網(wǎng)商如何用好即時(shí)通信工具, 電子商務(wù)世界2008, 11(5): 14-17</p><p> [2]丁展 劉海英 Visual. C. 網(wǎng)絡(luò)通信編程實(shí)用案例精選, 北京: 人民郵電出版社, 2004: 1-32</p><p> [3]Zhen Xiao, Lei Guo, and John Tracey Understanding Inst
68、ant Messaging Traffic Characteristics, IEEE 2007 0-7695-2837-3/07: 21-28</p><p> [4]劉駿, 顏鋼鋒. 基于Socket的網(wǎng)絡(luò)編程技術(shù)及其實(shí)現(xiàn). 江南大學(xué)學(xué)報(bào)(自然科學(xué)版), 2004</p><p> [5]王曉鵬. TCP/IP下的Socket及Winsock通信機(jī)制. 航空計(jì)算技術(shù), 2004
69、, 30(2): 36-38</p><p> [6]宋坤, 劉銳寧, 李偉明. MFC程序開發(fā)參考大全. 北京: 人民郵電出版社, 2007: 546-567</p><p> [7]周宏生. 使用WinSock存在的問題和解決方法. 微計(jì)算機(jī)應(yīng)用, 2004</p><p> [8]劉旭國, 駱華杰, 王萬成. 即時(shí)通信工具的協(xié)議分析與互通研究. 網(wǎng)
70、絡(luò)安全技術(shù)與應(yīng)用, 2009, 2(1): 36-39</p><p> [9]陸軍. WinSock API網(wǎng)絡(luò)編程——TCP/IP協(xié)議. http: //www. impcas. ac. cn/usr/lujun/browse. asp?id=winsock_tcp 2004-08-28</p><p> [10]王利民. 網(wǎng)絡(luò)即時(shí)通信系統(tǒng). 電腦編程技巧與維護(hù), 2008,
71、14(8): 36-37</p><p> [11]程詠喜, 蔣珉. 基于TCP/IP協(xié)議的WinSock網(wǎng)絡(luò)編程及應(yīng)用. 計(jì)算機(jī)時(shí)代, 2004, 7(1): 14-15</p><p> [12]洪萍. 使用WinSock控件開發(fā)網(wǎng)絡(luò)程序. 計(jì)算機(jī)與現(xiàn)代化, 2004</p><p> [13]W. Richard Stevens. TCP/IP詳解
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 綜合課程設(shè)計(jì)---基于socket的即時(shí)通訊系統(tǒng)
- 校園即時(shí)通訊設(shè)計(jì)與開發(fā)課程設(shè)計(jì)
- 網(wǎng)絡(luò)即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- eYouIM即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 即時(shí)通訊畢業(yè)設(shè)計(jì)--企業(yè)內(nèi)部即時(shí)通訊系統(tǒng)的設(shè)計(jì)
- 企業(yè)辦公即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 即時(shí)通訊協(xié)議監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)設(shè)計(jì)---jqq即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 某單位即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于Android即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 畢業(yè)論文即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于android系統(tǒng)的即時(shí)通訊系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 博網(wǎng)即時(shí)通訊軟件的設(shè)計(jì)與實(shí)現(xiàn)
- 基于Android平臺(tái)即時(shí)通訊系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 財(cái)鑫集團(tuán)即時(shí)通訊系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于AVS的即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 計(jì)算機(jī)畢業(yè)設(shè)計(jì)29aspnet基于bs方式的即時(shí)通訊軟件的設(shè)計(jì)與實(shí)現(xiàn)
- 基于Java的即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 移動(dòng)醫(yī)療平臺(tái)即時(shí)通訊系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論