童波 楊丹 季康
摘要:《C#程序設(shè)計(jì)》是一門系統(tǒng)性,綜合性較強(qiáng)的專業(yè)課程。C船言作為一門重要的面向?qū)ο蟪绦蜷_發(fā)語言,該課程特點(diǎn)呈現(xiàn)出知識點(diǎn)小且多,知識點(diǎn)聯(lián)系較為緊密,在實(shí)際教學(xué)活動(dòng)中,學(xué)生對于知識很難做到舉一反三,對于所學(xué)知識點(diǎn)只是簡單重復(fù),缺乏創(chuàng)新能力。而計(jì)算思維理論強(qiáng)調(diào)的是提供一種解決問題,培養(yǎng)能力的思維方式,與該課程與解決的問題契合度很高。故該文在教學(xué)設(shè)計(jì)中融入計(jì)算思維,設(shè)計(jì)開發(fā)網(wǎng)絡(luò)課程平臺,以學(xué)生為主體,教師為主導(dǎo)的教學(xué)思想組織教學(xué),提高學(xué)生的參與度,改善教學(xué)效果。
關(guān)鍵詞:C#程序設(shè)計(jì);計(jì)算思維;創(chuàng)新能力
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A
1背景
《C#程序設(shè)計(jì)》課程是計(jì)算機(jī)軟件技術(shù)專業(yè)最重要的專業(yè)課程之一。按照專業(yè)的培養(yǎng)方案,掌握獨(dú)立開發(fā)窗體應(yīng)用程序和Web應(yīng)用程序成了該課程的重要的教學(xué)目標(biāo)之一。然而在傳統(tǒng)教學(xué)實(shí)踐中,雖然融入了一定的信息手段,但沒有完全改變傳統(tǒng)的教學(xué)方式,導(dǎo)致學(xué)習(xí)效果較差,學(xué)習(xí)者往往很難自主完成學(xué)習(xí)任務(wù)。
新時(shí)期的課程改革要求,利用信息技術(shù),既要保證傳統(tǒng)課堂教學(xué)的系統(tǒng)性,又要融入網(wǎng)絡(luò)教學(xué)的非線性和多元性。即是一種新的混合教學(xué)模式。為了迎合這種混合教學(xué)模式,在實(shí)際教學(xué)中必須融入計(jì)算思維,著重培養(yǎng)學(xué)生的計(jì)算思維能力。而程序設(shè)計(jì)類課程改革也由原來的注重技能培養(yǎng),轉(zhuǎn)變?yōu)樽⒅貏?chuàng)新思維能力的培養(yǎng),這種教學(xué)思維的轉(zhuǎn)變,為融入計(jì)算思維的《C#程序設(shè)計(jì)》課程實(shí)踐提供了契機(jī)。本文以《C#程序設(shè)計(jì)》課程教學(xué)為例,圍繞如何在教學(xué)中融入計(jì)算思維,設(shè)計(jì)開發(fā)了網(wǎng)絡(luò)課程平臺,并探討依托平臺開展的課程教學(xué)模式。
2計(jì)算思維的概念
計(jì)算思維由美國亞裔科學(xué)家周以真(Jeannette M. Wing)提出并倡導(dǎo),是當(dāng)今學(xué)術(shù)界普遍認(rèn)同的三大科學(xué)思維之一。計(jì)算思維強(qiáng)調(diào)運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì)以及人類行為理解等涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng)。
計(jì)算思維提供的是解決問題的思維方法。根據(jù)計(jì)算思維與數(shù)字化學(xué)習(xí)的關(guān)系,計(jì)算思維提出了六個(gè)核心技能,可以分為抽象、算法思維、自動(dòng)化、分解、調(diào)試、概括化。抽象指的是找出問題的主要矛盾,隱藏問題的細(xì)節(jié),概括抽象使得問題變得簡單;算法思維是指在抽象的基礎(chǔ)上,針對問題指定解決問題的步驟;自動(dòng)化是指按照指定的步驟,重復(fù)簡單的動(dòng)作,高效地完成任務(wù);分解是指將復(fù)雜的問題分解,簡單化;調(diào)試是在解決問題的過程中,不斷的預(yù)測和驗(yàn)證結(jié)果;概括化則類似于知識的遷移,通過問題的解決,總結(jié)經(jīng)驗(yàn)、概括特點(diǎn),舉一反三,有利于類似問題的解決。
計(jì)算思維是使用計(jì)算機(jī)科學(xué)的思維去解決實(shí)際生活中的問題,反過來,學(xué)習(xí)程序設(shè)計(jì)語言也可以利用實(shí)際生活中的一些經(jīng)驗(yàn)來理解,比如在C#語言中,類的概念就來源于生活對某一事物特征的描述。而在《C#程序設(shè)計(jì)》教學(xué)中,多采用項(xiàng)目化教學(xué)——基于問題解決的一種教學(xué)模式。綜上所述,計(jì)算思維與《C耀序設(shè)計(jì)》的教學(xué)有明確的契合性。
3《C#程序設(shè)計(jì)》課程教學(xué)中存在的問題
第一,傳統(tǒng)的課堂不利于實(shí)際情景問題的解答,妨礙創(chuàng)造性思維的形式。在傳統(tǒng)的課堂中,通常會對于理論知識進(jìn)行概念講解,對實(shí)踐知識則使用簡單案例進(jìn)行驗(yàn)證。這樣做不可否認(rèn)有利于知識的系統(tǒng)化,但是對于實(shí)際問題的解答,會出現(xiàn)明顯不足。如課程常見的,根據(jù)所學(xué)C#語法,設(shè)計(jì)一個(gè)小程序,大部分學(xué)生則無法很好地完成,學(xué)生很難做到舉一反三,靈活思辨。根據(jù)計(jì)算思維理論的要求,學(xué)習(xí)者需自主的抽象出有用信息,歸納解題思路。這就需要引入“翻轉(zhuǎn)課堂”的形式,展開線上線下教學(xué)。
第二,傳統(tǒng)的課堂學(xué)習(xí),學(xué)生很難形成內(nèi)驅(qū)力。傳統(tǒng)學(xué)習(xí)中,學(xué)生的積極性不高,普遍對于課堂互動(dòng)參與較少,應(yīng)采用問題導(dǎo)向,引導(dǎo)學(xué)生參與問題解答,讓學(xué)生體驗(yàn)成功,提升學(xué)生的自我提升內(nèi)驅(qū)力。在課程設(shè)置上,需要盡可能將知識點(diǎn)細(xì)分,引導(dǎo)學(xué)生圍繞問題的解決來學(xué)習(xí)。例如在課前圍繞某一個(gè)實(shí)際的編程問題,設(shè)置多個(gè)知識點(diǎn),以一個(gè)視頻一個(gè)知識點(diǎn)的形式,進(jìn)行學(xué)習(xí),自主思考解決問題,做到計(jì)算思維的分解和自動(dòng)化。
第三,傳統(tǒng)的課堂學(xué)習(xí),對于學(xué)生課外學(xué)習(xí)情況難以支持和把控。傳統(tǒng)的教學(xué)資源相對匱乏,且系統(tǒng)性、整體性不夠,一些學(xué)習(xí)資源相對老舊,更新不及時(shí)。學(xué)生對于學(xué)習(xí)資源的獲取較為困難。在以學(xué)生為中心的教學(xué)中,應(yīng)給學(xué)生創(chuàng)建良好的學(xué)習(xí)環(huán)境,包括提供豐富的配套的學(xué)習(xí)資源,跟蹤學(xué)生的學(xué)習(xí)軌跡,形成良好的師生互動(dòng),讓學(xué)生對知識點(diǎn)進(jìn)行不斷的分解,調(diào)試和概括總結(jié)。
第四,傳統(tǒng)的評價(jià)形式單一,評價(jià)反饋不充分不全面。在傳統(tǒng)教學(xué)當(dāng)中,以“考代評”現(xiàn)象比較突出。在學(xué)期綜合測評中強(qiáng)調(diào)由“平時(shí)分”和“考試成績”按一定的比例組成,在平時(shí)分方面,教師只能通過學(xué)生作業(yè)和課堂表現(xiàn)兩方面來進(jìn)行評價(jià),學(xué)生作業(yè)存在評價(jià)不及時(shí),反饋效果有限等問題。課堂表現(xiàn)則多流于形式,課堂表現(xiàn)積極的人數(shù)較少,反饋不充分不全面。在考試方面,隨堂測試和期末考試等考核形式相對單一,考核不夠全面,促進(jìn)作用有限。
4融入計(jì)算思維的《C#程序設(shè)計(jì)》課程教學(xué)模式
本文根據(jù)計(jì)算思維相關(guān)理論,結(jié)合《C#程序設(shè)計(jì)》課程實(shí)際存在的問題,提出融入計(jì)算思維的《C#程序設(shè)計(jì)》課程教學(xué)模式,包含四個(gè)部分:抽象、關(guān)聯(lián)、歸納和評價(jià)。并根據(jù)該模式,設(shè)計(jì)并開發(fā)了網(wǎng)絡(luò)課程平臺,以解決課程教學(xué)中所存在的問題。
首先,圍繞問題,抽象出關(guān)鍵信息,尋找解題思路。開展線上自主學(xué)習(xí),布置學(xué)習(xí)任務(wù),讓學(xué)生自主完成學(xué)習(xí)。網(wǎng)絡(luò)課程平臺網(wǎng)頁客戶端提供線上學(xué)習(xí)模塊,學(xué)習(xí)者可以自主的圍繞教師發(fā)布的學(xué)習(xí)任務(wù),自主探索學(xué)習(xí),學(xué)習(xí)資源包括:十分鐘以內(nèi)的學(xué)習(xí)視頻、代碼示例、PPT等。
其次,關(guān)聯(lián)所學(xué)知識,映射到實(shí)際問題中。在課程當(dāng)中,教師會先設(shè)置一個(gè)具體的問題,如:如何使用while循環(huán)來進(jìn)行數(shù)組冒泡排序?在這個(gè)問題中,涉及多個(gè)知識點(diǎn),如循環(huán)語句、數(shù)組、排序方法等。在學(xué)習(xí)資源提供方面,提供的是循環(huán)語句語法,數(shù)組語法,冒泡排序的方法(以另外一種for循環(huán)的方法給出),要求學(xué)生通過for循環(huán)的冒泡法,推出while循環(huán)實(shí)現(xiàn)冒泡排序。
再次,歸納總結(jié)所學(xué)知識,做到舉一反三,鍛煉創(chuàng)造性思維。在課堂上,不在對知識點(diǎn)進(jìn)行講解,而是以學(xué)生為中心,教師主導(dǎo)學(xué)生進(jìn)行問題的解答,輔導(dǎo)學(xué)生進(jìn)行知識的歸納,遷移。在課堂上針對問題,讓學(xué)生先完成課前的問題,對學(xué)生進(jìn)行輔導(dǎo)解答,當(dāng)大部分學(xué)生能完成任務(wù)時(shí),再提出一個(gè)實(shí)際的問題,如:請對我們班所有同學(xué)的學(xué)號進(jìn)行排序,要求使用插入排序的方式。這時(shí)候教師只需要提供“插入排序”的程序設(shè)計(jì)思想,引導(dǎo)學(xué)習(xí)者自主完成任務(wù)。
最后,評價(jià)反饋,幫助學(xué)生鞏固知識,并逐步形成計(jì)算思維。根據(jù)課程平臺上的學(xué)習(xí)者學(xué)習(xí)軌跡,對學(xué)生的解答過程進(jìn)行評價(jià)和反饋,與課上的討論協(xié)作練習(xí)評價(jià)一起形成學(xué)生的過程評價(jià)結(jié)果。
5結(jié)束語
本文通過分析《C#程序設(shè)計(jì)》課程教學(xué)存在的問題,引入計(jì)算思維相關(guān)理論,設(shè)計(jì)了一個(gè)以計(jì)算思維所提供的解決問題的思維為導(dǎo)向,融入計(jì)算思維的《C#程序設(shè)計(jì)》課程教學(xué)模式。
為了檢驗(yàn)該模式的運(yùn)用效果,對計(jì)算機(jī)軟件技術(shù)專業(yè).NET方向的兩個(gè)行政班分別采用融入計(jì)算思維的教學(xué)模式和傳統(tǒng)課堂教學(xué)模式,經(jīng)過一個(gè)學(xué)期的對照教學(xué),采用新的教學(xué)模式的班級,期末考試42人中,不及格人數(shù)為3人,平均分達(dá)到76分,80分以上人數(shù)達(dá)到25%。采用傳統(tǒng)教學(xué)模式的班級,44人中,不及格人數(shù)為5人,平局分為67分,80分以上的人數(shù)為16%。
通過后期的問卷調(diào)查,發(fā)現(xiàn)融入計(jì)算思維的《C#程序設(shè)計(jì)》課程教學(xué)模式普遍受到同學(xué)們的歡迎,學(xué)生表現(xiàn)出了明顯的主動(dòng)性和學(xué)習(xí)積極性。成就感和自信心得到了提升,計(jì)算思維能力也得到了一定的加強(qiáng)。