公務員期刊網(wǎng) 論文中心 正文

差異化能力培養(yǎng)下計算機程序設計探析

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了差異化能力培養(yǎng)下計算機程序設計探析范文,希望能給你帶來靈感和參考,敬請閱讀。

差異化能力培養(yǎng)下計算機程序設計探析

摘要:計算機程序設計是眾多高校的公共基礎課程,教學目標要求理論與實踐并重。調(diào)研發(fā)現(xiàn),學生的計算機基礎差距很大,如何在統(tǒng)一的教學大綱和考核要求下,針對差異化的個體開展實驗教學工作,是一項具有挑戰(zhàn)性的難題。文章從學生能力培養(yǎng)的角度出發(fā),采用現(xiàn)代教育技術(shù),針對不同起點的學生,基于本地、服務端、云端等平臺建立了一套多維度的實驗教學體系。教學實踐表明,該體系具有教學對象適用范圍廣、各平臺互補性強的特點,能實現(xiàn)因材施教的目標,為計算機基礎課程的實驗教學提供一種可借鑒的方案。

關(guān)鍵詞:差異化教學;計算機程序設計;能力培養(yǎng);實驗體系

計算機程序在驅(qū)動當今社會高效運轉(zhuǎn)的各類系統(tǒng)中處于核心地位,程序設計能力已成為高端人才的必備能力。作為高等教育在學人數(shù)最多的國家[1],我國對計算機教學越來越重視,很多大學將計算機程序設計列為面向所有專業(yè)開設的公共基礎或通修課程。與數(shù)學物理等基礎課程不同的是,從教學目標上,計算機程序設計應該是一門理論與實踐并重的課程。然而在實際的教學中,由于教學理念、實驗條件、教學方法、考核機制的影響與約束,使得課程實踐的整體水平很難達到教學要求。另一方面,現(xiàn)代教育理念強調(diào)以學習者為中心,而相比于其他基礎課程,由于中學信息技術(shù)教育水平的不同,大學新生在計算機基礎方面的差異十分巨大,單一的實驗教學模式難以滿足差異化的學生學習需求。近年來各高校都加強了實驗條件建設,并且針對學生程序設計能力的培養(yǎng),在實驗教學形式與教學內(nèi)容方面進行了很多改革的嘗試。比如采用項目導向[2]、應用導向甚至競賽導向[3]的形式,增加探索性實驗內(nèi)容[4],引導學生綜合利用知識解決問題;也有強調(diào)從錯誤中學習和培養(yǎng)編程能力[5]、建立突出實踐能力評價的多元考核體系等方法[6-7],以實踐促學習;在分層教學方面,也有一些有益的嘗試[8]。但由于缺乏體系化設計以及相應的條件建設,仍然無法建立能有效解決學生基礎差異問題的實驗教學模式。針對上述問題,本文首先進行了學情分析,然后設計了多平臺的實驗體系,通過差異化的教學實踐幫助學生從不同的起點出發(fā)達到教學目標。

一、學情分析

在國內(nèi)計算機教育起步階段,幾乎所有大學新生都沒有專業(yè)的計算機基礎,因此計算機課程可以沿用其他課程的教學模式,從零基礎開始學習語法知識、練習編寫小程序,所有人同步學習直至完成教學任務。當時的計算機課程主要面向信息和計算機類專業(yè)的學生,屬于專業(yè)課程體系,學生的學習目標明確,學習主動性也較強。但在進入信息時代之后,國內(nèi)高校已普遍把計算機程序設計列為各專業(yè)都需要學習的基礎課程,教學對象表現(xiàn)出如下特征:(1)專業(yè)差異大,涉及到理學、工學、農(nóng)學、醫(yī)學、經(jīng)濟學、管理學等跨度很大的專業(yè),各專業(yè)對程序設計能力的需求各有不同;(2)基礎差異大,由于信息技術(shù)不是高考科目,大多數(shù)新生并未在中學系統(tǒng)學習過編程,甚至有相當一部分人并不經(jīng)常使用計算機,在學習本課程之前幾乎是零基礎,但由于信息奧賽是高考自主招生認可的五大競賽之一,又有相當數(shù)量的學生參加過信息類競賽,對編程較為熟悉,這些基礎不同的學生顯然無法保持一致的學習進度。課程組在本校新生入學時進行的計算機基礎調(diào)研結(jié)果見表1。從中可以看出,學生的計算機基礎分布較為分散,其中學過C/C++的學生占比達到11.3%,而這已經(jīng)是計算機程序設計基礎課程能選擇的最難的語言;學過至少一門編程語言的更是高達20.1%,對這些基礎很好的同學來說,按部就班的實驗內(nèi)容難以滿足他們的學習需求。但與此同時,不能熟練使用計算機的同學占比高達43%以上,其中很少使用計算機的同學達到了14.6%的比例,對他們來說,學習編程的過程具有相當?shù)奶魬?zhàn)性。從“以生為本”的角度,針對基礎不同的學生,應該有更多可選的實驗平臺,安排不同起點的實驗內(nèi)容以及循序漸進的實驗方案,以幫助他們盡快縮小差距,最終共同達到學習目標。因此,設計與實現(xiàn)一個面向差異化能力培養(yǎng)的實驗教學體系成為必然的選擇。

二、實驗體系設計與教學實踐

本文從教學對象、實驗內(nèi)容、實驗平臺三個維度進行了差異化的實驗體系設計,其架構(gòu)如圖1所示。每個維度都是一個由淺入深、循序漸進逐步發(fā)展的過程,介紹如下。

(一)教學對象維度

中國科學技術(shù)大學(以下簡稱“我?!保?009年起,在國內(nèi)率先把計算機程序設計作為全校所有專業(yè)的通修課程,并在設課同時實施了分級教學。根據(jù)新生的入學計算機測試結(jié)果,結(jié)合學生的分班意愿,劃分了基礎班和普通班。在當時,兩類班級的主要差別就體現(xiàn)在實驗內(nèi)容上。從2018年起,在省級重大教研項目支持下,課程組對本課程進行了更深層次的改革,在進行了細致調(diào)研的基礎上再次分級,面向具有較強程序設計能力的學生增設了進階班,配備具有豐富教學科研經(jīng)驗的教師和計算機專業(yè)的研究生助教,開展進階內(nèi)容的教學。從教學對象維度,分班不僅意味著知識儲備起點的不同,也對應著從不同層次的實驗內(nèi)容和實驗平臺起步。

(二)實驗內(nèi)容維度

實驗是學習計算機程序設計的最核心環(huán)節(jié),但在當前的教學實踐中,存在著實驗內(nèi)容過于簡單和零碎、缺乏系統(tǒng)性與趣味性等問題。題目類型較為單一,更注重知識點的學習與練習,而不是對程序設計思想與方法的理解與掌握。特別是沒有針對不同基礎的學生設置不同層次的實驗內(nèi)容,難以滿足學生的差異化學習需求。為改變現(xiàn)狀,首先針對基礎薄弱的基礎班學生,增加了計算機應用的上機內(nèi)容,主要包括Windows操作系統(tǒng)及常用應用軟件操作實驗、OfficeWord、Excel和Power-Point操作實驗、以及Linux操作系統(tǒng)與網(wǎng)絡操作實驗等。針對普通班的學生,實驗內(nèi)容則從演示型實驗開始,逐步過渡到驗證型、設計型和綜合型,其中綜合型包括了二維字符數(shù)組的操作、文件與鏈表的應用等較為復雜的內(nèi)容,重點鍛煉學生的程序設計思想與計算思維能力。針對進階班的學生,除了增加算法分析與設計、軟件工程等方面的教學內(nèi)容外,更是大幅增強了實驗內(nèi)容。要求學生以自由組隊的方式,完成至少兩項任務,其一是使用MillerRabin測試算法進行素數(shù)判定,其中涉及二進制大數(shù)的生成、輸入、運算與測試等較為艱深的數(shù)值表示與處理的內(nèi)容,學生通過本實驗了解使用計算機暴力計算能力從概率上解決數(shù)論問題,以及隨機化算法的設計思想;其二是設計實現(xiàn)一款游戲,要求:(1)該游戲必須包含動態(tài)控制成分(例如:棋子移動、飛行等,而不能是簡單直接地顯示棋子);(2)C語言下可以用字符作為顯示界面,也可以在C++語言下用圖形窗口作為顯示界面;(3)作為游戲,應當有人機交互成分。要求交互界面友好,易學;(4)鼓勵有基礎的同學嘗試添加博弈對抗;(5)鼓勵有基礎的同學嘗試多機聯(lián)合/對抗等。

(三)實驗平臺維度

課程為不同基礎的同學提供了多平臺的實驗環(huán)境,分為本地、服務端和云端三類平臺。基礎薄弱的學生從簡單易用的DevC++5.11本地開發(fā)環(huán)境開始練習,有了一定基礎后則要求使用兼容性更好的CodeBlocks開發(fā)環(huán)境或更加專業(yè)的VisualStudioCode環(huán)境。中后期的綜合類實驗,除了基于離線平臺編寫與調(diào)試源代碼外,還要求學生在服務端的自主實驗實訓平臺(圖2)在線提交已完成的代碼,一方面便于助教隨時進行評判,另一方面可以長期保存學生的實驗程序。對于進階班與其他進行到綜合類與項目導向類實驗階段的同學,要求分別在我校自主開發(fā)的在線評測系統(tǒng)CODIA(課達編程)(圖3)以及華為“智能基座”產(chǎn)教融合項目提供的鯤鵬云平臺(圖4)上進行自我測試與高階練習。

(四)綜合考核

合理的考核制度,重點不在于如何考察學生對知識的記憶和掌握的熟練程度,而是要有利于激發(fā)學生的學習主動性與探索未知的興趣。本課程的實驗考核環(huán)節(jié),采用了線上線下相結(jié)合、教師與學習者共同參與的綜合考核方式。線下通過人工對演示型、驗證型和設計型實驗的正確性進行評判,而綜合型實驗則會進行綜合評判,評分內(nèi)容包括實驗程序的完整性、魯棒性(如是否有較為完善的錯誤捕捉與處理機制等)、項目報告的規(guī)范性;對項目導向類或其他開放性實驗,則從作品的創(chuàng)新性(程序中獨創(chuàng)的部分,包括使用新的架構(gòu)、算法或策略、設計理念等)、作品新穎性(與已有程序的差異,具有趣味性甚至對抗性等)等方面,由教師、助教以及各分組間互評打分,盡可能保證評分的合理性與公平性。線上主要通過平臺打分,如自主實訓平臺可以完成語法練習類程序的語法正確性判定,而程序設計思想與方法的優(yōu)劣則由教師和助教人工進行評判。在線評測系統(tǒng)由于使用了機器學習與大數(shù)據(jù)分析技術(shù),已經(jīng)能夠達到信息類競賽用軟件的評測水平,適用于本課程除項目導向類以外的所有實驗內(nèi)容的自動評分。以上多維考核的結(jié)果最終進行加權(quán)計算,得到學生的綜合實驗成績,而實驗成績占課程總評成績的40%,較好體現(xiàn)了實踐能力在課程學習中的重要性。在4個課堂進行的教學實踐發(fā)現(xiàn),學生編程能力有顯著提高,代碼規(guī)范性從無到有,難度高、工作量大的綜合實驗的完成率從約60%提高到85%以上。在我校課堂教學質(zhì)量評估系統(tǒng)中,學生均給出了4.5分(滿分5分)以上的評價,處于全校課堂的前列。

三、結(jié)束語

作為一門理論與實踐并重的課程,面對基礎差異巨大的學習群體,設計能力層次分明、平臺搭配合理、評分公平有效的實驗體系,對學生掌握程序設計思想與方法、鍛煉編程實踐能力具有至關(guān)重要的作用。教學效果證明了本文設計的多平臺實驗體系在差異化能力培養(yǎng)方面的有效性。未來的工作中,將依托智慧課堂等現(xiàn)代教育技術(shù),進一步改進與細化差異化能力培養(yǎng)模式,以達到更優(yōu)的教學效果。

作者:王雷 唐建 白雪飛 單位:中國科學技術(shù)大學信息學院