王琪
【摘要】隨著計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)編程在網(wǎng)絡(luò)應(yīng)用中非常重要,受到中職學(xué)校的關(guān)注和重視,成為計(jì)算機(jī)專業(yè)的核心課程之一。本文筆者在認(rèn)真分析了目前的教學(xué)現(xiàn)狀情況下,對(duì)“計(jì)算機(jī)網(wǎng)絡(luò)”課程的網(wǎng)絡(luò)編程部分的教學(xué)方式進(jìn)行了探討,旨在為計(jì)算機(jī)專業(yè)網(wǎng)絡(luò)編程課程教學(xué)實(shí)踐提供一定的參考。
【關(guān)鍵詞】計(jì)算機(jī)網(wǎng)絡(luò) ; 網(wǎng)絡(luò)編程 ; 技術(shù) ; 案例教學(xué)
【中圖分類號(hào)】TP393 【文獻(xiàn)標(biāo)識(shí)碼】B 【文章編號(hào)】2095-3089(2015)23-0014-01
計(jì)算機(jī)網(wǎng)絡(luò)編程技術(shù)是計(jì)算機(jī)專業(yè)開(kāi)設(shè)的一門(mén)軟件設(shè)計(jì)類專業(yè)課程,這一課程的主要目的是培養(yǎng)學(xué)生的編程能力,不過(guò)學(xué)生在學(xué)習(xí)應(yīng)用層和傳輸層相關(guān)內(nèi)容的時(shí)候會(huì)存在一些障礙,例如無(wú)法理解基于TCP的傳輸和UDP傳輸具體的差異。根據(jù)計(jì)算機(jī)網(wǎng)絡(luò)編程的課程特點(diǎn)和課程主要目的要求,必須要進(jìn)行有效調(diào)節(jié),本文將探討網(wǎng)絡(luò)編程技術(shù)課程教學(xué)方法。
一、網(wǎng)絡(luò)編程教學(xué)相關(guān)概述
1.基本內(nèi)容
書(shū)中用了一個(gè)非常簡(jiǎn)單的實(shí)例,介紹了在基于TCP和UDP不同情況下的編程方法。在以該例作為網(wǎng)絡(luò)編程的教學(xué)過(guò)程中,不能只局限在介紹書(shū)中的代碼,更重要的是要讓學(xué)生理解到TCP和UDP的網(wǎng)絡(luò)編程存在的差異,從而有效地了解TCP和UDP的工作原理。實(shí)例的協(xié)議工作步驟如下:(1)客戶端從標(biāo)準(zhǔn)輸入(鍵盤(pán))輸入一行字符信息。(2)將這行字符信息通過(guò)客戶端Socket發(fā)送到服務(wù)器。(4)服務(wù)器通過(guò)Socket接收字符信息,將所有的字符轉(zhuǎn)換成大寫(xiě)字母。(4)服務(wù)器把轉(zhuǎn)換后的大寫(xiě)字符通過(guò)Socket發(fā)送到服務(wù)器。(5)客戶端收到服務(wù)器的信息后,將其在標(biāo)準(zhǔn)輸出(顯示器)上顯示出來(lái)。
2.基本現(xiàn)狀
當(dāng)計(jì)算機(jī)網(wǎng)絡(luò)規(guī)模不斷擴(kuò)大,人類步入信息化社會(huì),各種網(wǎng)絡(luò)應(yīng)用層出不窮時(shí),對(duì)于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的教學(xué)研究已趨于成熟,而在網(wǎng)絡(luò)平臺(tái)上構(gòu)建新服務(wù)即網(wǎng)絡(luò)編程成為新的話題。 在專業(yè)課程體系中,網(wǎng)絡(luò)編程技術(shù)主要分為兩類: 一類是 Web 編程, 另一類是 Socket 編程。 Web 編程主要是指以 ASP.NET 或 J2EE 兩大主流平臺(tái)為基礎(chǔ),編寫(xiě)基于 B/S(瀏覽器/服務(wù)器)模式應(yīng)用程序,包括前臺(tái) Web 頁(yè)面顯示、后臺(tái)數(shù)據(jù)庫(kù)操作等技術(shù),由此可見(jiàn)它主要關(guān)注于應(yīng)用層業(yè)務(wù)邏輯的實(shí)現(xiàn),更側(cè)重?cái)?shù)據(jù)庫(kù)應(yīng)用。 Socket(套接字)編程則是借助于套接字技術(shù),達(dá)到網(wǎng)絡(luò)上不同主機(jī)中的進(jìn)程(應(yīng)用程序)之間通信的目的。它著重研究網(wǎng)絡(luò)模型、層次、協(xié)議等,是 Unix 系統(tǒng)的產(chǎn)物,是 TCP/IP 網(wǎng)絡(luò)應(yīng)用程序通信的基礎(chǔ),亦是本文所要探討的內(nèi)容,即探討合適的教學(xué)模式、教學(xué)方法,合理有效地組織教學(xué)內(nèi)容,強(qiáng)化實(shí)驗(yàn)教學(xué),對(duì)網(wǎng)絡(luò)編程技術(shù)課程進(jìn)行適當(dāng)改革,從而使本課程的教學(xué)具有創(chuàng)新性,形式多樣生動(dòng)、知識(shí)豐富實(shí)用,以達(dá)到中職學(xué)校培養(yǎng)應(yīng)用型人才的要求。
二、建立網(wǎng)絡(luò)編程授課方法體系
1.演繹教學(xué)法到案例教學(xué)法的轉(zhuǎn)變
演繹法對(duì)于訓(xùn)練學(xué)生邏輯思維能力很有幫助,但它對(duì)學(xué)生的基礎(chǔ)要求較高,無(wú)法深刻理解有關(guān)原理就無(wú)法實(shí)現(xiàn)相關(guān)實(shí)例,而中職學(xué)校學(xué)生往往基礎(chǔ)偏薄弱,那么讓他們首先接觸抽象的原理并掌握它有點(diǎn)困難了,不少同學(xué)也就望而卻步、知難而退了。 何不換種方式,選取一些典型的實(shí)例切入,講解這些實(shí)例的實(shí)現(xiàn)過(guò)程,在這過(guò)程中逐步地引入相關(guān)原理、知識(shí)以解決對(duì)應(yīng)問(wèn)題,學(xué)生們帶著實(shí)際問(wèn)題聽(tīng)課,邊講邊練,等到實(shí)例講完時(shí),相關(guān)原理、知識(shí)講清楚了,實(shí)例也實(shí)現(xiàn)了?;麨榱?,更有利于學(xué)生消化、鞏固知識(shí),凸顯案例教學(xué)法對(duì)于實(shí)踐性強(qiáng)的課程事半功倍的效果,其關(guān)鍵在于案例的選取,只有選擇合適的案例才能發(fā)揮其作用。
2.對(duì)學(xué)生的上機(jī)操作以及實(shí)驗(yàn)教學(xué)進(jìn)行總結(jié)
計(jì)算機(jī)網(wǎng)絡(luò)編程作為一門(mén)需要很強(qiáng)的實(shí)踐操作能力的學(xué)科,除了要有足夠的時(shí)間進(jìn)行上機(jī)操作和編程練習(xí)外,對(duì)每次的操作的總結(jié)也是十分重要的。教師應(yīng)讓學(xué)生在上機(jī)操作和實(shí)驗(yàn)教學(xué)完畢后,總結(jié)此次操作的經(jīng)驗(yàn)并進(jìn)行記錄。這種做法,不僅可以讓學(xué)生加強(qiáng)對(duì)于操作過(guò)程的記憶,加深對(duì)實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)?zāi)康牡睦斫?,還可以讓教師通過(guò)學(xué)生的總結(jié)報(bào)告掌握學(xué)生的學(xué)習(xí)狀況和操作過(guò)程中存在的問(wèn)題,使教師了解教學(xué)情況,有針對(duì)性的制定教學(xué)計(jì)劃。
3.結(jié)合案例教學(xué)法選擇經(jīng)典案例
例如聊天程序、文件下載程序等。以及 Java 語(yǔ)言——用于案例的實(shí)現(xiàn)。 程序設(shè)計(jì)語(yǔ)言各有千秋,各有適用,但程序設(shè)計(jì)的基本思想是相通的,我們要求學(xué)生至少掌握一門(mén)程序設(shè)計(jì)語(yǔ)言,求其精而非求泛。Java 語(yǔ)言跨平臺(tái)的特性、純面向?qū)ο笏枷胍约邦愒O(shè)計(jì)技巧都值得深入學(xué)習(xí),豐富的應(yīng)用程序開(kāi)發(fā)接口為開(kāi)發(fā)應(yīng)用程序提供了很大的方便,同時(shí)也是 J2EE 等課程的基礎(chǔ),選擇 Java 語(yǔ)言既不增加學(xué)生因?yàn)閷W(xué)習(xí)不同程序設(shè)計(jì)語(yǔ)言造成的不必要的難度,也使得前繼、后續(xù)課程有機(jī)結(jié)合。 學(xué)生們通過(guò)借助 Java 程序開(kāi)發(fā)接口實(shí)現(xiàn)聊天程序能夠在局域網(wǎng)內(nèi)發(fā)送文字信息,或是簡(jiǎn)單文件下載程序能夠從百度下載一首音樂(lè), 真實(shí)地感受到網(wǎng)絡(luò)編程的樂(lè)趣,極大地增強(qiáng)了自信心。
4.重視實(shí)驗(yàn)
編程能力是在編程過(guò)程中通過(guò)不斷實(shí)踐自然形成的,網(wǎng)絡(luò)編程主要在課堂和課外進(jìn)行,教師重點(diǎn)控制好課堂的指導(dǎo)質(zhì)量,在編程實(shí)驗(yàn)過(guò)程中,要針對(duì)每組學(xué)生的項(xiàng)目開(kāi)發(fā),都給予相應(yīng)的指導(dǎo),甚至和小組一起分析實(shí)現(xiàn)技巧。由于課堂時(shí)間總是有限的,許多時(shí)間需要學(xué)生在課外利用,所以,要求教師在每次完課前,布置下堂課的檢查內(nèi)容,需要學(xué)生提交設(shè)計(jì)或編碼文檔,并在下次課堂上公布,或由學(xué)生講解自己的成果。這種不斷檢驗(yàn)、不斷推進(jìn)的做法作者稱為“螺旋型推進(jìn)”編程方法。
代碼的講解結(jié)束以后,學(xué)生不一定能真正有效地掌握基于Java的網(wǎng)絡(luò)編程實(shí)驗(yàn),因此可以給學(xué)生設(shè)計(jì)相應(yīng)的課程設(shè)計(jì)。我們采用的教學(xué)方式為,以2~3人為一組,采用組長(zhǎng)負(fù)責(zé)制,完成一個(gè)網(wǎng)絡(luò)編程的實(shí)驗(yàn)項(xiàng)目。以組為單位的目的是希望鍛煉學(xué)生的團(tuán)隊(duì)合作能力以及組織能力。完成以后要求小組的組員講解該項(xiàng)目的設(shè)計(jì)過(guò)程,從而鍛煉學(xué)生的表達(dá)能力。
綜上所述,在當(dāng)今社會(huì)激烈的競(jìng)爭(zhēng)下,各個(gè)學(xué)校要對(duì)于計(jì)算機(jī)網(wǎng)絡(luò)編程課程給予高度重視,不斷提高學(xué)生的實(shí)際操作能力以及利用這門(mén)學(xué)科的理論、技術(shù)知識(shí)解決問(wèn)題能力。
參考文獻(xiàn)
[1]陳黎,琚生根,王相國(guó),周剛. 計(jì)算機(jī)網(wǎng)絡(luò)課程中網(wǎng)絡(luò)編程的教學(xué)及實(shí)驗(yàn)設(shè)計(jì)[J]. 實(shí)驗(yàn)技術(shù)與管理,2015,06:217-220+223.
[2]孫明. Visual Basic在計(jì)算機(jī)網(wǎng)絡(luò)編程中的應(yīng)用研究[J]. 才智,2012,03:48.endprint