?? 本系統(tǒng)是國內(nèi)首部講述.NET網(wǎng)絡(luò)通信、移動開發(fā)、服務(wù)器端編程領(lǐng)域的課程,通過本課程的學(xué)習(xí)您可以領(lǐng)略到.NET在服務(wù)器端各種優(yōu)點(diǎn)。
?
一、IM(即時(shí)通訊)系統(tǒng)簡介
?? ?IM(即時(shí)通訊)系統(tǒng)已經(jīng)成為企業(yè)內(nèi)部以及企業(yè)與客戶或供應(yīng)商之間溝通的重要手段,其具有即時(shí)性強(qiáng)、快速、方便等特點(diǎn)。 IM不但能進(jìn)行一般的文本信息交流工具,還可以進(jìn)行文件傳輸、語音和視頻通話的功能,越來越成為企業(yè)必不可少的應(yīng)用系統(tǒng)。
???
本系統(tǒng)全面集成當(dāng)前IM所具備的功能,可以進(jìn)行文本聊天、語音或視頻對話、文件傳輸,同時(shí)還提供移動聊天功能,用戶可以在智能手機(jī)上安裝移動版,充分發(fā)揮當(dāng)前通信技術(shù)的優(yōu)勢,使用戶真正體驗(yàn)到隨時(shí)隨地進(jìn)行溝通的便利。
???
本次項(xiàng)目實(shí)訓(xùn)使用Microsoft .NET技術(shù),構(gòu)建基于UDP通信協(xié)議的IM通信系統(tǒng)。通過本次實(shí)訓(xùn),學(xué)生可以掌握基本的Windows Form開發(fā)方法,自定義控件和組件的設(shè)計(jì),委托和事件的靈活應(yīng)用,了解三層體系架構(gòu)的基本原理等基礎(chǔ)知識,還能夠深入的了解文件流在網(wǎng)絡(luò)傳輸中的應(yīng)用和流媒體技術(shù)的基本知識以及Windows Mobile平臺下UDP通信的應(yīng)用等較深入的技術(shù)。
?
項(xiàng)目主要涉及的技術(shù)點(diǎn):
????
NET網(wǎng)絡(luò)通信、UDP點(diǎn)對點(diǎn)網(wǎng)絡(luò)通信、UDP服務(wù)器\客戶端通信、TCP/IP文件傳輸、UDP音頻、視頻對話通信、移動開發(fā)、.NET Compact Framework基礎(chǔ)、Windows Mobile 系統(tǒng)基礎(chǔ)、智能設(shè)備項(xiàng)目開發(fā)方法、智能設(shè)備項(xiàng)目發(fā)布方法、其他技術(shù)、圖片在數(shù)據(jù)庫中保存及顯示、RichTextBox的使用、第三方控件的使用、用戶控件和組件的設(shè)計(jì)和使用
?
二、課程內(nèi)容介紹
?
?
2.1、基礎(chǔ)篇:Windows Form開發(fā)基礎(chǔ)
????? ? 通過本環(huán)節(jié)的學(xué)習(xí),了解Windows Form開發(fā)方法,主要包括三個(gè)部分的內(nèi)容。
???? 2.1.1、RichiTextBox的應(yīng)用
通過對RichTextBox的重寫,擴(kuò)展展其功能,使其能夠顯示文本消息和圖片、播放動畫及文本的拖曳等功能,并能夠通過其屬性獲取加載到其中的文本及圖像等對象。
???? 2.1.2、委托和事件
?詳細(xì)了解委托和事件的概念及原理,能夠用戶自定義控件及組件中靈活應(yīng)用委托和事件,增強(qiáng)代碼的可重用性。
???? 2.1.3、用戶自定義控件和組件
介紹用戶自定義控件和組件,使開發(fā)者能夠設(shè)計(jì)出通用的自定義控件或組件。
?
?
2.2、 進(jìn)階篇:三層體系架構(gòu)的實(shí)現(xiàn)及數(shù)據(jù)庫訪問
????????? ?2.2.1、三層體系架構(gòu)的基本概念
??????????????????? ?了解三層體系架構(gòu)的基本概念,掌握三層體系架構(gòu)的原理,理解各層的主要職責(zé)及互相之間的關(guān)系,并動手設(shè)計(jì)三層體系結(jié)構(gòu)的軟件系統(tǒng)。
???????????2.2.2、 ADO.NET數(shù)據(jù)庫訪問技術(shù)
???????????????????? 熟悉并掌握ADO.NET數(shù)據(jù)庫訪問技術(shù),靈活應(yīng)用SqlClient中的各個(gè)數(shù)據(jù)庫相關(guān)的類。
???????????
2.2.3、 數(shù)據(jù)訪問層的實(shí)現(xiàn)
???? ??????????????? 通過ADO.NET技術(shù),實(shí)現(xiàn)數(shù)據(jù)庫訪問層,可以在多個(gè)項(xiàng)目中使用。
???????????
2.2.4、 實(shí)體層的實(shí)現(xiàn)
? ???????????????? ??通過實(shí)體的構(gòu)建,了解業(yè)務(wù)邏輯層的基本構(gòu)成,以及應(yīng)用。
???? ?????
?2.2.5 、序列化與反序列化
?????????????????? ?了解二進(jìn)制和XML序列化及反序列化的概念及原理,序列化和反序列化應(yīng)用的范圍及注意事項(xiàng),以及序列化在跨平臺系統(tǒng)中的應(yīng)用。
?
?
2.3 、提高篇(1):.NET網(wǎng)絡(luò)通信
?????????????????????? 了解基本的.NET網(wǎng)絡(luò)通信基礎(chǔ),包括Socket、TCP和UDP等。
???????????
2.3.1 、UDP點(diǎn)對點(diǎn)網(wǎng)絡(luò)通信
??????????????????????掌握UDP點(diǎn)對點(diǎn)通信原理,構(gòu)建UDP局域網(wǎng)遠(yuǎn)程通信系統(tǒng),了解網(wǎng)絡(luò)通信中的協(xié)議定義及擴(kuò)展方法。
???????? ??
2.3.2 、UDP服務(wù)器/客戶端通信
????????????????? ??? 通過UDP構(gòu)建服務(wù)器/客戶端通信系統(tǒng),掌握基本的UDP打洞原理,以及服務(wù)器信息轉(zhuǎn)發(fā)功能等。
???????? ??
2.3.3、 UDP網(wǎng)絡(luò)文件傳輸
???????? ??????? ???? 掌握UDP點(diǎn)對點(diǎn)文件傳輸方法,了解UDP打洞、NAT、MTU等網(wǎng)絡(luò)傳輸概念。
?
?
2.4 提高篇(2):.NET網(wǎng)絡(luò)音頻和視頻通信
???????????????? 掌握音頻視頻流在.NET網(wǎng)絡(luò)中的傳輸和介紹以及顯示技術(shù),初步了解流媒體在網(wǎng)絡(luò)應(yīng)用中的開發(fā)技術(shù)。
?
?
2.5、提高篇(3):智能設(shè)備項(xiàng)目開發(fā)方法
????????? 2.5.1、智能設(shè)備程序開發(fā)基礎(chǔ)
???????????????? 了解Windows Mobile平臺軟件開發(fā)方法,掌握智能設(shè)備軟件開發(fā)及部署技術(shù),能夠熟練開發(fā)基于Windows Mobile或WinCE平臺的軟件系統(tǒng)。
??????
?? 2.5.2 、智能設(shè)備數(shù)據(jù)庫訪問技術(shù)
??????????????? ???掌握基于Windows Mobile平臺的數(shù)據(jù)庫訪問技術(shù)及了解Sql Server CE的訪問技術(shù)。
??????????
2.5.3、網(wǎng)絡(luò)通信技術(shù)
??????????????????? 掌握UDP網(wǎng)絡(luò)通信技術(shù)在Windows Mobile平臺與Windows平臺的應(yīng)用,同時(shí)掌握基于智能設(shè)備組件和控件的重寫及擴(kuò)展,其中包括TabPage重寫、TreeView重寫,擴(kuò)展相關(guān)控件的屬性及事件等。
?????????
?2.5.4 、智能設(shè)備項(xiàng)目調(diào)試與部署
?????????????????? 掌握Windows Mobile智能設(shè)備項(xiàng)目的安裝解決方案及部署技術(shù)。
?
?
2、6實(shí)戰(zhàn)篇:IM(即時(shí)通訊系統(tǒng))
?????????
2.6.1 、系統(tǒng)架構(gòu)設(shè)計(jì)
?????????????? ?對整個(gè)IM系統(tǒng)進(jìn)行架構(gòu)設(shè)計(jì),讓學(xué)員掌握軟件系統(tǒng)架構(gòu)設(shè)計(jì)方法和規(guī)律。
???????? 2.6.2、系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
??????????????? 對通信系統(tǒng)所設(shè)計(jì)的數(shù)據(jù)庫進(jìn)行設(shè)計(jì),掌握數(shù)據(jù)庫設(shè)計(jì)的基本方法和步驟。
???????
? 2.6.3 、抽象工廠模式及單例模式設(shè)計(jì)
????????????????介紹抽象工廠和單例兩種設(shè)計(jì)模式,讓學(xué)員初步掌握設(shè)計(jì)模式的概念及設(shè)計(jì)模式的作用,并通過動手設(shè)計(jì),深入理解設(shè)計(jì)模式在軟件重用設(shè)計(jì)中的重要性,以及抽象工廠模式和單例模式的應(yīng)用范圍及作用。
?????????
2.6.4用戶登錄界面設(shè)計(jì)
???????????????? 開始對IM通信系統(tǒng)客戶端登的錄界面進(jìn)行設(shè)計(jì),掌握用戶界面設(shè)計(jì)的基本方法。
?????????
2.6.5系統(tǒng)主面板設(shè)計(jì)
???????????????? 設(shè)計(jì)通信系統(tǒng)的主面板界面,使其具有靈活的可配置性能以及美觀大方的外觀。
?????????2.6.6、聊天功能設(shè)計(jì)
????????????????設(shè)計(jì)聊天窗體,具備文本聊天及圖片收發(fā)功能,同時(shí)可以進(jìn)行文件傳遞及音頻視頻聊天功能。
?????????
2.6.7、文件傳輸
???????????????? 應(yīng)用前面自定義控件和組件的知識,設(shè)計(jì)開發(fā)文件傳輸組件,具體執(zhí)行文件傳輸?shù)墓δ堋?br>
????????
?2.6.8、語音聊天
???????????????? 詳細(xì)介紹語音聊天所涉及的API及語音設(shè)備驅(qū)動的設(shè)計(jì)開發(fā),掌握流媒體技術(shù)的基本知識。
?????????
2.6.9、視頻聊天
????????????????? 詳細(xì)介紹視頻聊天所設(shè)計(jì)的API及屏幕截屏及圖像流的處理技術(shù),掌握流媒體高級技術(shù)。
?????????
2.6.10、移動設(shè)備聊天功能設(shè)計(jì)
??????????????????設(shè)計(jì)類似于手機(jī)QQ的UDP通信系統(tǒng),與Windows平臺的系統(tǒng)進(jìn)行通信,同時(shí)掌握跨平信息傳遞的序列化方法。
?????????
2.6.11、用戶管理功能?
?????????????????? 掌握用戶管理的基本知識,自定義網(wǎng)絡(luò)通信協(xié)議。
?????????
2.6.12、 部門管理功能
?????????????????? 掌握部門管理的基本知識,同時(shí)學(xué)習(xí)到遞歸方法在多級組織架構(gòu)中的算法。
?????????
2.6.13 、表情發(fā)送功能
?????????????????? 實(shí)現(xiàn)通信系統(tǒng)中的表情發(fā)送功能,了解如何通過系統(tǒng)自帶圖片減少網(wǎng)絡(luò)傳輸流量。
?
?2.7?、IM(即時(shí)通訊系統(tǒng))服務(wù)器端開發(fā)
??????????2.7.1、 Windows 服務(wù)的開發(fā)
?????????????????????學(xué)習(xí)Windows 服務(wù)的設(shè)計(jì)方法及原理,熟練掌握Windows 服務(wù)的開發(fā)技術(shù)及系統(tǒng)運(yùn)行規(guī)則和安裝部署技術(shù)。
????????
??2.7.2 、UDP服務(wù)器設(shè)計(jì)
???????????????????? 設(shè)計(jì)開發(fā)基于UDP通信協(xié)議的服務(wù)器端系統(tǒng),全面了解UDP通信原理,并了解自定義通信協(xié)議的使用和可擴(kuò)展性。
?