王建國
摘要:本文在分析了傳統(tǒng)教學(xué)模式帶來的問題后,提出了基于案例教學(xué)模式,通過設(shè)計(jì)項(xiàng)目,并將之按知識點(diǎn)拆分,每部分內(nèi)容的完成在知識點(diǎn)講解之后,當(dāng)課程結(jié)束后,將得到一個(gè)完整的可上線的項(xiàng)目,學(xué)生容易掌握。實(shí)踐證明,該方式行之有效。
關(guān)鍵詞:案例;教學(xué)模式;教學(xué)改革
中圖分類號:G642.0 文獻(xiàn)標(biāo)志碼:A 文章編號:1674-9324(2019)17-0129-02
一、引言
編程語言類的課程教學(xué),在課程的教學(xué)過程中,按照教學(xué)大綱將知識點(diǎn)教授給學(xué)生,并結(jié)合上機(jī)環(huán)節(jié),加深并鞏固對知識點(diǎn)的理解和掌握。等課程結(jié)束后,學(xué)生對基礎(chǔ)知識能夠較好地掌握,但是真正的做一個(gè)小的項(xiàng)目(如課程設(shè)計(jì)環(huán)節(jié))還不能夠得心應(yīng)手。拿到項(xiàng)目需求后,如何進(jìn)行實(shí)施,感到無從下手,理論和實(shí)踐脫節(jié),達(dá)不到編程類課程的教學(xué)目的。為了解決這個(gè)問題[1,2],有些編程類課程安排了課程設(shè)計(jì)教學(xué)環(huán)節(jié),有些課程在課程結(jié)課前安排了一個(gè)較大的綜合案例教學(xué)分析,但是由于時(shí)間較短,學(xué)生很難接受并掌握。另外,這類課程在培養(yǎng)方案中通常安排48學(xué)時(shí),理論教學(xué)和上機(jī)實(shí)踐時(shí)間比例通常是2∶1,如何在較短的學(xué)時(shí)內(nèi)讓學(xué)生熟練編程語言,并能夠進(jìn)行課程設(shè)計(jì)類工作量題目的開發(fā),下面以《JSP設(shè)計(jì)》這門課程為例進(jìn)行分析。
二、教學(xué)模式設(shè)計(jì)
教學(xué)模式設(shè)計(jì)。分析教學(xué)大綱,充分了解本門課程應(yīng)該完成的教學(xué)內(nèi)容。在此基礎(chǔ)上,選擇合適的教材,并提供1—2本參考書目。教學(xué)過程中使用的教材是清華大學(xué)出版社出版的由張躍平、耿祥義編著的《JSP程序設(shè)計(jì)(第2版)》[3],該教材針對各個(gè)知識點(diǎn)都有小的示例,便于學(xué)生學(xué)習(xí)、理解。分析課程的前導(dǎo)和后續(xù)課程,為本門課程在教學(xué)過程中講解哪些內(nèi)容提供依據(jù)。認(rèn)真進(jìn)行教學(xué)設(shè)計(jì),根據(jù)教學(xué)大綱和知識點(diǎn)的重要程度設(shè)計(jì)教學(xué)日歷,并詳細(xì)設(shè)計(jì)教案。整個(gè)教學(xué)設(shè)計(jì)分為幾部分組成:基礎(chǔ)知識內(nèi)容的講解,知識點(diǎn)的實(shí)踐驗(yàn)證,知識點(diǎn)的綜合運(yùn)用及實(shí)踐;貫穿整個(gè)教學(xué)過程的綜合案例的設(shè)計(jì)及拆分,拆分后的每部分都對應(yīng)部分知識點(diǎn)的應(yīng)用。該綜合案例是一個(gè)漸進(jìn)的完成過程,每部分內(nèi)容的完成都會(huì)綜合運(yùn)用其他知識點(diǎn),這樣學(xué)生在學(xué)習(xí)過程中就能夠知道如何解決問題。和傳統(tǒng)的到課程快結(jié)束時(shí)給出一個(gè)綜合案例的講解及課程設(shè)計(jì)環(huán)節(jié)的練習(xí)相比,使學(xué)生不會(huì)感到突兀,有一種“隨風(fēng)潛入夜,潤物細(xì)無聲”的感覺。隨著課程的結(jié)束,學(xué)生對本門課程基礎(chǔ)知識的掌握以及知識的綜合運(yùn)用能力都得到了提升。該綜合案例不是在課上作為示例講解,而是作為學(xué)生的平時(shí)作業(yè)來完成,該課程安排5—6次作業(yè)。在第一堂課就先告訴學(xué)生課程教學(xué)要達(dá)到的整體目標(biāo),并把這個(gè)綜合案例做一個(gè)展示,讓學(xué)生知道當(dāng)他們學(xué)完這門課之后,他們具備了完成這樣一個(gè)項(xiàng)目的綜合能力。為了讓學(xué)生充分掌握吸收各部分知識點(diǎn)的內(nèi)容,每次完成作業(yè)的時(shí)間為1周,提交整個(gè)項(xiàng)目,每次作業(yè)在上一次作業(yè)的基礎(chǔ)上完成,在完成當(dāng)前作業(yè)的時(shí)候,可以根據(jù)需要對前面部分覺得不合理、不滿意的地方進(jìn)行修改。由于IT行業(yè)尤其強(qiáng)調(diào)團(tuán)隊(duì)協(xié)作能力,在完成作業(yè)的時(shí)候,要求學(xué)生2—3人一組,自由結(jié)組,并指定一名負(fù)責(zé)人,在完成作業(yè)的過程中,小組成員可以商量著完成作業(yè),并要求掌握整個(gè)項(xiàng)目內(nèi)容。學(xué)生以教師演示的案例為基礎(chǔ),必須完成案例中所有的功能,每次作業(yè)有具體明確的需求,并提供相應(yīng)的運(yùn)行截圖,學(xué)生在完成功能時(shí)可以自由發(fā)揮,如改變UI布局、顏色,可以添加新功能。
三、教學(xué)案例設(shè)計(jì)
在教學(xué)過程中設(shè)計(jì)了一個(gè)綜合案例[4,5]——《JSP開發(fā)》課程學(xué)習(xí)平臺,該案例貫穿課程的教學(xué),主要是完成一個(gè)課程學(xué)習(xí)平臺網(wǎng)站的設(shè)計(jì)與實(shí)現(xiàn)。該案例不作為課上講解使用,而是用于課下作業(yè),針對學(xué)過的知識點(diǎn)的綜合練習(xí)。當(dāng)完成最后一次作業(yè)時(shí),學(xué)生已經(jīng)具備了設(shè)計(jì)并用JSP實(shí)現(xiàn)一個(gè)網(wǎng)站的能力。作業(yè)設(shè)計(jì)如下圖所示。
第一次作業(yè):制作網(wǎng)站框架頁面,擴(kuò)展名用“jsp”。給出頁面效果圖,并指定頁面之間滿足如下關(guān)系:(1)首頁文件命名為index.jsp,首先訪問index.jsp頁面,單擊“注冊”鏈接打開注冊頁面,單擊“登錄”鏈接打開登錄頁面。(2)單擊頁面中的“注冊”按鈕,跳轉(zhuǎn)到一個(gè)新的頁面(自己設(shè)計(jì)),并顯示信息內(nèi)容為:“注冊成功!”(3)單擊首頁面中的“登錄”按鈕,跳轉(zhuǎn)到登錄成功頁面,在該頁面加上本組成員的介紹(姓名、學(xué)號、照片等)及分工創(chuàng)意說明,自行頁面設(shè)計(jì)。(4)頁面布局、顏色、內(nèi)容可以本組決定。本次作業(yè)主要練習(xí)和本課程相關(guān)的前序課程(Html+CSS)的知識以及本課程中基本JSP頁面的編寫、Web容器(Tomcat)的安裝及JSP項(xiàng)目的部署。
第二次作業(yè):第二次作業(yè)在第一次作業(yè)的基礎(chǔ)上進(jìn)行完善。(1)將登錄成功后的所有頁面中的左側(cè)的“當(dāng)前用戶”后面的“張三”替換為登錄時(shí)的賬號。在登錄頁面輸入賬號和密碼后單擊“登錄”按鈕,由接收頁面判斷輸入的賬號與密碼和本組組長的姓名和學(xué)號進(jìn)行比對,如果一致,認(rèn)為登錄成功。(2)單擊注冊頁面中的“注冊”按鈕,跳轉(zhuǎn)到一個(gè)新的頁面,在該頁面中顯示注冊頁面中輸入的信息,要求界面設(shè)計(jì)美觀。(3)修改第一次作業(yè)中的登錄成功首頁面,在該頁面右上角添加如下顯示信息:“您是第N次登錄”。其中N換為具體的數(shù)值,用session對象實(shí)現(xiàn)。(4)在首頁顯示網(wǎng)站被訪問的次數(shù),用application對象實(shí)現(xiàn)。本次作業(yè)主要練習(xí)如何使用JSP內(nèi)置對象及內(nèi)置對象常用方法的使用,以及JSP頁面的基本結(jié)構(gòu)練習(xí),包括JSP標(biāo)記、變量和方法的聲明、Java程序片及Java表達(dá)式。
第三次作業(yè):第三次作業(yè)在第二次作業(yè)的基礎(chǔ)上進(jìn)行完善。(1)單擊注冊頁面中的“注冊”按鈕,跳轉(zhuǎn)到一個(gè)新的頁面,在該頁面中顯示注冊頁面中輸入的信息,并且將注冊信息保存到數(shù)據(jù)庫中。(2)在登錄頁面輸入賬號和密碼后單擊“登錄”按鈕,和數(shù)據(jù)庫中的賬號和密碼進(jìn)行比較,如果一致,認(rèn)為登錄成功。(3)單擊“新增內(nèi)容”鏈接,將信息保存到數(shù)據(jù)庫中。(4)單擊“內(nèi)容查詢”鏈接,顯示查詢條件頁面(自己定義查詢條件),根據(jù)輸入的查詢條件進(jìn)行結(jié)果顯示。(5)單擊“修改密碼”鏈接,將當(dāng)前登錄賬號的密碼修改成新的。本次作業(yè)主要練習(xí)如何使用JDBC連接數(shù)據(jù)庫(任選,推薦使用MySQL),如何使用JSP對數(shù)據(jù)庫進(jìn)行增、刪、改、查操作,如何實(shí)現(xiàn)分頁操作。
第四次作業(yè):第四次作業(yè)在第三次作業(yè)的基礎(chǔ)上進(jìn)行完善。(1)單擊“新增內(nèi)容”鏈接,單擊“上傳”按鈕將本地的PPT文件上傳到服務(wù)器端。(2)單擊“保存”按鈕,將輸入的信息及上傳的PPT位置信息保存到數(shù)據(jù)庫中。(3)單擊“內(nèi)容查詢”鏈接,單擊“PPT”列的鏈接,進(jìn)行PPT文件下載。本次作業(yè)主要練習(xí)JSP中的文件操作,如何進(jìn)行文件的上傳和下載。
第五次作業(yè):第五次作業(yè)在第四次作業(yè)的基礎(chǔ)上進(jìn)行完善。通過對前面代碼的分析,完成通過代碼復(fù)用完成軟件設(shè)計(jì)。本次作業(yè)主要練習(xí)Tag文件如何編寫、保存和Tag標(biāo)記的使用。
第六次作業(yè)(擴(kuò)展):第六次作業(yè)在第五次作業(yè)的基礎(chǔ)上進(jìn)行完善。使用MVC模式完成前面代碼的重構(gòu)。練習(xí)JavaBean、Servlet及MVC模式開發(fā)網(wǎng)站。
四、結(jié)論
通過改革實(shí)踐,將知識點(diǎn)的綜合練習(xí)分階段融合到一個(gè)JSP實(shí)現(xiàn)的網(wǎng)站實(shí)現(xiàn)中,在課程最后給學(xué)生分析、講解一個(gè)綜合案例,或者在課程結(jié)束后安排1—2周的課程設(shè)計(jì)效果要好。如果課時(shí)允許,可以在課程結(jié)束后再安排一個(gè)課程設(shè)計(jì),這對《JSP開發(fā)》課程的學(xué)習(xí)質(zhì)量會(huì)有一個(gè)質(zhì)的提升。
參考文獻(xiàn):
[1]賴紹聰,華洪.課程教學(xué)方式的創(chuàng)新性改革與探索[J].中國大學(xué)教學(xué),2013,(1):30-31,45.
[2]賴紹聰.如何做好課程教學(xué)設(shè)計(jì)[J].中國大學(xué)教學(xué),2016,(10):14-18.
[3]耿祥義,張躍平.JSP程序設(shè)計(jì)[M].第二版.北京:清華大學(xué)出版社,2017.
[4]郭銀章,王麗芳.基于項(xiàng)目任務(wù)驅(qū)動(dòng)的C語言程序設(shè)計(jì)課程教學(xué)改革與實(shí)踐[J].計(jì)算機(jī)教育,2017,(2):41-44.
[5]錢存陽.項(xiàng)目化教學(xué)培養(yǎng)大學(xué)生系統(tǒng)實(shí)踐能力[J].高等工程教育研究,2015,(2):187-192.