亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        任務(wù)驅(qū)動的實踐教學(xué)初探

        2007-12-31 00:00:00石振蓮何涇沙
        計算機教育 2007年20期

        摘要:本文針對實踐類課程的教學(xué)過程中存在的問題,進行了教學(xué)法改革嘗試。新方法放棄了傳統(tǒng)的教師教授、學(xué)生練習(xí)的方式。采用任務(wù)驅(qū)動的方式調(diào)動學(xué)生的主動性。函數(shù)功能目標(biāo)以程序任務(wù)驅(qū)動實現(xiàn),而設(shè)計思想目標(biāo)以問題驅(qū)動完成。教師在學(xué)習(xí)過程中起引導(dǎo)和輔助作用。

        關(guān)鍵詞:實踐教學(xué);任務(wù)驅(qū)動;學(xué)習(xí)動機

        中圖分類號:G642文獻標(biāo)識碼:B

        文章編號:1672-5913 (2007) 20-0022-03

        實踐類課程是一類比較受學(xué)生歡迎的課程。但是在具體的教學(xué)中我們發(fā)現(xiàn)存在一些因素影響學(xué)生對課程內(nèi)容的理解、接收和興趣。因此,我們以“網(wǎng)絡(luò)通信程序設(shè)計”課程教學(xué)為例,對教學(xué)方法進行了嘗試性改革。

        “網(wǎng)絡(luò)通信程序設(shè)計”課程是一門以實踐為主的程序設(shè)計類的專業(yè)選修課程。該課程主要介紹Linux操作系統(tǒng)平臺下基于Socket API實現(xiàn)的網(wǎng)絡(luò)服務(wù)器的設(shè)計、開發(fā)與優(yōu)化。課程目標(biāo)是讓學(xué)生能夠理解客戶/服務(wù)器計算模式,了解訪問底層協(xié)議軟件的應(yīng)用程序接口,掌握實現(xiàn)客戶以及服務(wù)器軟件的基本算法,構(gòu)建基于TCP/IP協(xié)議棧的分布式應(yīng)用程序。

        1舊的教學(xué)過程

        在以前的教學(xué)中,我們主要采取教師課堂講授、學(xué)生上機完成相關(guān)練習(xí)的方式來完成教學(xué)。下面以“面向連接的客戶端軟件的設(shè)計與實現(xiàn)”這部分教學(xué)的內(nèi)容作為案例來說明舊的教學(xué)過程。我們選擇daytime服務(wù)的客戶端實現(xiàn)作為示例來講授這部分內(nèi)容。具體教學(xué)過程如下:

        1) 教師介紹daytime服務(wù)的語義,講清客戶端軟件的任務(wù);

        2) 教師給出客戶端軟件算法,畫出流程圖;

        3) 教師講解關(guān)鍵API的功能和用法,如socket()、connect()等;以及形成API參數(shù)必需的輔助函數(shù),如gethostbyname()、inet_addr()等;這部分講授的相關(guān)內(nèi)容還包括socket API的設(shè)計思想,如socket的通用性設(shè)計考慮;以及相關(guān)主要數(shù)據(jù)結(jié)構(gòu)的說明等等。

        4) 進入具體客戶端示例的講解;

        Oslash;教師演示程序

        Oslash;教師按照算法介紹程序的具體結(jié)構(gòu)和實現(xiàn)細節(jié)

        Oslash;最后,學(xué)生在實驗課時內(nèi)動手編寫TIME服務(wù)的客戶端軟件。

        在教學(xué)過程中,我們注意到,學(xué)生對于實踐類的程序設(shè)計興趣非常高,他們能夠很認(rèn)真地聽教師交待任務(wù);同時,他們對怎樣完成任務(wù)也有一種渴求,因此他們的注意力可以跟隨教師的思路將客戶端軟件的任務(wù)分析、以及算法設(shè)計過程完成;學(xué)生對于示例程序的演示也非常感興趣,因為他們看到了任務(wù)解決方案的結(jié)果。

        2舊教學(xué)過程存在的問題

        但是,在教學(xué)中我們也發(fā)現(xiàn)一些問題。我們?nèi)匀灰浴懊嫦蜻B接的客戶端軟件的設(shè)計與實現(xiàn)”這部分內(nèi)容的教學(xué)為例來說明具體存在的問題。這些問題雖然是這一單元教學(xué)中出現(xiàn)的,但它們實際上是程序設(shè)計類課程普遍存在的一些共性問題。具體問題如下:

        1) 學(xué)生非常不重視文檔

        雖然學(xué)生可以跟隨老師的思路將客戶端軟件的任務(wù)分析、以及算法設(shè)計過程完成。但是,對于描述算法設(shè)計的結(jié)果——流程圖則不感興趣。通常學(xué)生會認(rèn)為自己已經(jīng)清楚了任務(wù)的解決方案,而流程圖類文檔性工作是多此一舉。因此,當(dāng)教師畫流程圖時,學(xué)生的注意力便開始漂移。結(jié)果是學(xué)生領(lǐng)會不到流程圖的作用,不會畫流程圖,也不會使用像流程圖類的方法來幫助程序設(shè)計。

        2)API的介紹枯燥乏味,學(xué)生的注意力很容易發(fā)生轉(zhuǎn)移

        實現(xiàn)算法的核心API是學(xué)生完成程序必須掌握的??墒茿PI的功能和用法聽起來枯燥乏味。因此,這部分內(nèi)容的課堂講授效果非常不好。學(xué)生剛剛被任務(wù)激起的熱情很快就在乏味的API功能和參數(shù)的解釋中消失。

        3) 學(xué)生對于API設(shè)計思想的介紹興致索然

        Socket API中,很多接口函數(shù)的參數(shù)設(shè)定以及數(shù)據(jù)結(jié)構(gòu)的設(shè)計與API設(shè)計者的一些特殊考慮相關(guān)。例如,創(chuàng)建socket的函數(shù)調(diào)用socket()有一個參數(shù)要求給出socket所使用的協(xié)議棧。這是因為當(dāng)初設(shè)計的目標(biāo)是一個通用的、而不是只為TCP/IP協(xié)議棧服務(wù)的API。

        介紹Socket API設(shè)計思想有兩個目的。第一是讓學(xué)生更好地掌握API的用法。API的很多用法看起來很特殊。它們實際上是特殊設(shè)計考慮的結(jié)果。例如,連接函數(shù)connect()的參數(shù)中要求給出要連接服務(wù)器的地址。但是,采用通用設(shè)計思想的Socket API支持多種地址類型。為了保證connect()的通用性,它使用的地址參數(shù)類型是由如下的一種通用地址結(jié)構(gòu)類型來描述的:

        struct sockaddr { /*struct to hold an address */

        u_char sa_len; /* total length */

        u_short sa_family;/*type of address */

        char sa_data[14]; /*value of address*/

        }

        但是,每個程序都不會使用這個通用地址類型來描述所用的地址。因為這樣太不方便了。每個協(xié)議棧的應(yīng)用程序都使用自己所用地址類型的專用數(shù)據(jù)結(jié)構(gòu)說明。例如,TCP/IP使用32位IP地址和16位端口號來表示一個通信端點地址。因此,它使用的地址結(jié)構(gòu)類型是:

        struct sockaddr_in { /*struct to hold an address*/

        u_char sin_len;/* total length */

        u_short sin_family; /* type of address*/

        u_short sin_port;/* protocol port number */

        struct in_addr sin_addr;/* IP address(declared to be

        u_long on some systems)*/

        char sin_zero[8]; /*unused (set to zero) */

        }

        這樣程序中在每次調(diào)用connect()時,都進行強制類型轉(zhuǎn)換,才能保證參數(shù)類型匹配:

        connect(s,(struct sockaddr*)sin, sizeof(sin)

        只有介紹了Socket API的設(shè)計思想,學(xué)生才能理解Socket API的這些看起來很奇怪的用法。

        介紹Socket API設(shè)計思想的第二個作用是鍛煉學(xué)生的算法設(shè)計能力。讓學(xué)生從Socket API這個具體的、經(jīng)過時間檢驗的、帶有杰出設(shè)計者思想的設(shè)計案例中學(xué)習(xí)算法設(shè)計。

        但是,因為學(xué)生的注意力都集中在怎樣完成客戶端的任務(wù)。他們還沒有開始使用這些API來寫程序,對于API的這些特殊用法還沒有體會。在他們看來API的設(shè)計思想是與任務(wù)完全無關(guān)的話題。因此學(xué)生對這部分內(nèi)容沒有興趣,并不能夠認(rèn)真去聽。

        4) 學(xué)生動手寫程序時,需要重新花時間去學(xué)習(xí)由于注意力轉(zhuǎn)移而錯過的內(nèi)容

        當(dāng)學(xué)生開始動手做練習(xí)時,因為在教師講授過程中發(fā)生了注意力轉(zhuǎn)移,所以,他們需要自己重新學(xué)習(xí)API的用法。這不但浪費了時間,而且還導(dǎo)致一些學(xué)生產(chǎn)生挫折感。因為他們知道老師已經(jīng)講過,但是他們又確實并不知道怎樣做,一部分人會把這歸咎為這門課太難了,自己沒有能力掌握它,對本課程的信心大減,直至放棄。

        3任務(wù)驅(qū)動教學(xué)的新嘗試

        針對以上問題,我們對教學(xué)方式進行了改革嘗試。

        我們把教學(xué)過程從教師講授、學(xué)生練習(xí)方式兩部分更改為用任務(wù)驅(qū)動學(xué)生自己去學(xué)習(xí)、教師最后進行總結(jié)和有針對性的講解新的兩個階段。

        我們?nèi)匀灰郧懊嫠鼋虒W(xué)內(nèi)容為例來說明。首先,我們把類似Socket API這樣枯燥、不適合講授、而且學(xué)生完全可以自學(xué)理解的內(nèi)容,改由學(xué)生自學(xué)。教師的作用是引導(dǎo)和幫助。引導(dǎo)過程按照學(xué)習(xí)目標(biāo)分為兩部分。對于函數(shù)功能部分的學(xué)習(xí),教師以程序任務(wù)的形式來引導(dǎo)。而對于像設(shè)計理念這樣深層次思想的體會,則通過問題任務(wù)來引導(dǎo)。讓學(xué)生在設(shè)計程序、學(xué)習(xí)函數(shù)功能的過程中尋找答案。例如,為了讓學(xué)生能夠從Socket API的設(shè)計中學(xué)習(xí)到有價值的設(shè)計思想,我們設(shè)置了一些問題,讓同學(xué)思考,如為什么socket生成函數(shù)需要用戶給出socket使用的協(xié)議棧?為什么要按照服務(wù)類型,而不是基于協(xié)議來生成socket?這樣做有什么優(yōu)勢?又帶來什么問題?為什么地址需要轉(zhuǎn)換成通用的地址類型,這樣做是不是很麻煩?可以怎樣解決?

        新的教學(xué)過程如下:

        1) 教師給出任務(wù)描述,演示示例程序;

        2) 教師同學(xué)生一起,分析解題思路,設(shè)計算法;

        3) 教師告訴學(xué)生Socket API可以幫助完成任務(wù)、并給出一部分資料;

        4) 教師提出問題,讓學(xué)生在設(shè)計、實現(xiàn)客戶端軟件時思考,并要求在完成時回答;

        5) 學(xué)生自學(xué)并動手實現(xiàn)客戶端程序;

        6) 學(xué)生介紹、演示自己實現(xiàn)的程序,回答、討論前面提出的問題;

        7) 教師根據(jù)學(xué)生的情況作總結(jié),對學(xué)生設(shè)計、答辯、回答問題、以及討論過程中出現(xiàn)的問題進行針對性的講解。

        為了避免某些基礎(chǔ)差或不自信的學(xué)生因為無從下手而放棄學(xué)習(xí)[1],學(xué)生分組來完成任務(wù)。小組內(nèi)的同學(xué)共同研究和學(xué)習(xí)API的具體用法、討論問題的答案。他們一起將API對應(yīng)到算法中、完成程序的代碼實現(xiàn)。任務(wù)完成后,采取組內(nèi)推薦和教師選擇兩種方式選取學(xué)生進行答辯和回答問題。有關(guān)調(diào)查結(jié)果表明,多數(shù)大學(xué)生對團隊學(xué)習(xí)持歡迎態(tài)度[2]。我們這種分組的方式也正好符合了學(xué)生的這一特點。在學(xué)生協(xié)助學(xué)習(xí)API的過程中,同學(xué)之間互相幫助、互相講解,他們的學(xué)習(xí)主動性提高了。當(dāng)學(xué)生自己動手完成程序時,成就感提升了他們對這門課程的興趣。對于掌握新知識比較慢的同學(xué),他們也在同組同學(xué)的帶動下,完成任務(wù),不至于掉隊。

        在任務(wù)分析過程中,教師并不給出流程圖。在學(xué)生編寫程序過程中,尤其是分組協(xié)作的情況下,他們發(fā)現(xiàn)要有一種手段把算法流程精確描述出來,才能保證最后編寫程序的正確性。通過這個過程,學(xué)生可以體會到文檔的作用和必要性。這樣比教師強調(diào)文檔的重要性效果要好得多。

        通過對預(yù)設(shè)問題的思考和討論,學(xué)生更深地領(lǐng)會到API的設(shè)計思想,從中汲取算法設(shè)計經(jīng)驗,并學(xué)會歷史地、發(fā)展地看問題。同時,也更好地掌握了API的用法。

        在最后教師針對性的講解中,因為學(xué)生已經(jīng)知道自己具體問題所在,所以效果比原來的課堂講授方式要好。

        根據(jù)調(diào)查,大學(xué)生的直接性學(xué)習(xí)動機,如分?jǐn)?shù)、獎賞等會隨年級升高而逐漸減弱,而間接性學(xué)習(xí)動機,如求知、探索、成就等,隨年級升高而逐漸加強[3,4]。我們的新教學(xué)嘗試正是利用了這個特點。本課程是高年級的選修課程。新教學(xué)方式讓學(xué)生在完成任務(wù)的過程中自己學(xué)習(xí)知識,滿足了他們的求知和探索的欲望,因而在整個完成任務(wù)的過程中,他們表現(xiàn)出極大的熱情。最終任務(wù)的完成又給了他們很強的成就感,使他們對這門課程以及自身的信心都得以提升。

        4結(jié)束語

        目前,我們的這種教學(xué)方式還處于嘗試過程中,收到一些好的效果,解決了以前存在的一些問題。但是,新方法教學(xué)過程中也存在一些新問題,如課堂時間不好掌控、學(xué)生基礎(chǔ)相差較大時,分組以及進度控制比較困難等。這些有待于我們進一步思考、探索、和實踐。

        參考文獻:

        [1] 劉云波,羅亞莉. 運用動機理論激發(fā)大學(xué)生的學(xué)習(xí)動機[J]. 當(dāng)代教育論壇,2007,(5).

        [2] 藍色暢想工作組. 大學(xué)生學(xué)習(xí)成就動機差異的研究[EB]. http://jw.nju.edu.cn/xxl/xxkx/tools/cou/《大學(xué)生學(xué)習(xí)成就動機差異的研究》答辯論文.doc

        [3] 教育部人事司. 高等教育心理學(xué)[M]. 北京:高等教育出版社,2004.

        [4] 萬俊,王楓. 我國大學(xué)生學(xué)習(xí)動機的研究與發(fā)展[J]. 教育前沿,2007,(2).

        作者簡介

        張麗(1973-),女,副教授,2004年北京大學(xué)信息技術(shù)學(xué)院獲計算機體系結(jié)構(gòu)專業(yè)理學(xué)博士,講授過課程有互聯(lián)網(wǎng)體系結(jié)構(gòu)、網(wǎng)絡(luò)通信程序設(shè)計、網(wǎng)絡(luò)通信協(xié)議分析、操作系統(tǒng)分析、離散數(shù)學(xué)、PKI技術(shù)等,研究方向為選播技術(shù)、網(wǎng)絡(luò)管理、服務(wù)發(fā)現(xiàn)等。

        沈琦,女,副教授, 2004獲得中國礦業(yè)大學(xué)信電學(xué)院博士學(xué)位。在國際會議和核心期刊上已經(jīng)發(fā)表多篇學(xué)術(shù)論文。榮獲中國礦業(yè)大學(xué)優(yōu)秀青年骨干教師、北京市中青年骨干教師等榮譽稱號。研究方向:計算機網(wǎng)絡(luò)技術(shù)及應(yīng)用、分布式計算、代理技術(shù)及應(yīng)用。

        石振蓮,女,講師,講授課程:軟件工程、可視化建模與UML、程序設(shè)計入門。

        本文由北京市屬市管高校人才強教計劃資助項目資助

        午夜视频在线观看国产| 亚洲精品有码在线观看| 麻豆国产VA免费精品高清在线 | 极品新娘高清在线观看| 日本饥渴人妻欲求不满| 久久久无码人妻精品一区| 国产极品美女高潮抽搐免费网站| 日本一区二区三区在线视频观看| 国产一区二区视频免费在| 少妇无码av无码一区| 久久99国产伦精品免费| 日本高清色一区二区三区| 亚洲精品在线国产精品| 国产午夜福利在线播放| 国产精品黑色丝袜在线播放| 日韩av一区二区不卡在线| 国产在线精品一区二区三区直播| 国产精品-区区久久久狼| 福利一区二区三区视频在线| 极品av一区二区三区| 亚洲爆乳精品无码一区二区| 国产成人亚洲精品电影| 青青草视频视频在线观看| 日日躁夜夜躁狠狠躁| 亚洲人成无码网www| av网页在线免费观看| 日本激情网站中文字幕| 国产69精品久久久久999小说| 在线观看二区视频网站二区| 成人av在线免费播放| 包皮上有一点一点白色的| 亚洲男人第一无码av网站| 少妇的诱惑免费在线观看| 成人自拍偷拍视频在线观看| 亚洲av无码av在线播放| 俺也去色官网| 久久精品亚洲成在人线av| 女人18毛片a级毛片| 18禁美女裸体网站无遮挡| 日本视频一区二区二区| 极品人妻被黑人中出种子|