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