


摘要:本文旨在探索工程化教學(xué)對編程實踐和應(yīng)用能力的提升作用和方法。方法:使用了第三方開源硬件作為工程化教學(xué)的輔助手段。通過項目設(shè)計與實踐提高初學(xué)者對編程語言基本知識點的理解進而提升綜合應(yīng)用能力,真正將所學(xué)轉(zhuǎn)化為能力。結(jié)果:根據(jù)文中列舉的知識點做比較項統(tǒng)計掌握度對比結(jié)果,分為課程前自測、實測、課程結(jié)束后的項目評定三個階段,通過三階段的比較得到工程化教學(xué)對編程應(yīng)用能力提升的效果數(shù)據(jù)。結(jié)論:提升編程應(yīng)用能力是非常重要的教學(xué)目標(biāo),提高學(xué)生實踐、學(xué)科競賽、創(chuàng)新的能力,并契合新工科教學(xué)改革目標(biāo),培養(yǎng)符合行業(yè)與社會需求的復(fù)合型專業(yè)人才。
關(guān)鍵詞:工程化教學(xué);程序設(shè)計;編程語言;設(shè)計應(yīng)用
前言
國家對于“新工科”的大力支持與推進是深化應(yīng)用型人才培養(yǎng)的堅實后盾和方向指引,鼓勵創(chuàng)新工程教育方式與手段,探索新的實踐教學(xué)體系和結(jié)構(gòu)。對于計算機專業(yè)學(xué)生來說程序設(shè)計應(yīng)用能力是學(xué)生是否真正掌握“編程”這一技能的重要指標(biāo),決定了學(xué)生在適應(yīng)社會需求與崗位能力所需的程度。如何能使教學(xué)適應(yīng)社會需求以及讓學(xué)生“編程”能力真正得到提升及達到崗位能力所需是計算機類學(xué)科在教學(xué)中必須重點關(guān)注和解決的問題。
一、程序設(shè)計教學(xué)問題與現(xiàn)狀
計算機學(xué)科基本上由數(shù)學(xué)和機械學(xué)科衍生而來,最大特征就是能不能做出來,這個方法(算法或設(shè)計)效率有多高。程序設(shè)計在計算機學(xué)科中又處在基礎(chǔ)和關(guān)鍵環(huán)節(jié),最大的特點是需要實踐才能掌握知識點,實踐能力也是用人單位考量學(xué)習(xí)者能力最重要的方面。
對于計算機學(xué)科來說知識是相關(guān)聯(lián)的,從教學(xué)目標(biāo)到各級各階段教學(xué)任務(wù),從某級某階段知識點開始逐步加深對相關(guān)課程的理解。某個知識點是懂與不懂的問題,但是具體到實踐就是懂多少的問題(延伸如完成相同任務(wù),解決方法數(shù)量與質(zhì)量是與實踐能力成正比的),隨著知識應(yīng)用廣度與深度的差別,工程化教學(xué)與普通教學(xué)將形成知識層面的“馬太效應(yīng)”差距會成倍增長。
(一)國內(nèi)外現(xiàn)狀
計算機學(xué)科的工程化借鑒了傳統(tǒng)工科標(biāo)準(zhǔn)化、工藝化、模塊化、平臺化的特點,旨在解決如何明確學(xué)習(xí)目的,提升學(xué)習(xí)興趣這類編程語言教學(xué)中的難點。國外工科學(xué)校對于創(chuàng)新教學(xué)方法的研究層出不窮,蒙特雷技術(shù)學(xué)院試圖通過腦電圖信號識別及互動式的教學(xué)方法來改善較難課程的教學(xué)動態(tài)[1]。林克平大學(xué)工科教育采用CDIO模式應(yīng)用在自動控制學(xué)科及工程教育中,CDIO教學(xué)做一體化的教學(xué)模式對工科學(xué)校教學(xué)具有顯著作用[2]。
國內(nèi)學(xué)校對于如何提升學(xué)生的計算機應(yīng)用能力也有諸多的探索,程序語言教學(xué)中的諸多問題如代碼規(guī)范遵守、調(diào)試程序的能力[3]、團隊協(xié)作的能力等等已經(jīng)作為教學(xué)的重要目標(biāo)。無論一周一個small projiect,每周上機測試,使用UCB查重,互測制度等,還是設(shè)計幾個huge project,每個project開始看上去難度都很高,通過長期實踐來最終完成。各種方式的目的都是強化實踐教學(xué),最終可以極大地提升學(xué)生程序設(shè)計應(yīng)用能力。
(二)問題與改進方案
傳統(tǒng)教學(xué)中課堂上大都采用分散的基礎(chǔ)知識點講解,使用各自的案例進行解釋和運用,但如何整合這些知識點的方法也大都采用同一個貫穿項目來解決,使得考核方式單一,考核結(jié)果雷同,不能體現(xiàn)知識點實際掌握水平。對于這種情況當(dāng)然可以采用Version Contral工具等來制約,了解項目組渾水摸魚的情況。但抹殺了學(xué)生的主觀能動性,學(xué)生一門課下來沒寫幾行代碼,更不能讓學(xué)生主動系統(tǒng)地理解知識點之間的關(guān)聯(lián),真正體現(xiàn)能力的所學(xué)有所用沒有合適的方式來實現(xiàn)。本文所述工程化教學(xué)方式可以在一定程度上修正傳統(tǒng)教學(xué)方式的弊端及提升學(xué)生的實踐應(yīng)用能力。
二、工程化教學(xué)的理念與意義
知識工程化的概念出自19世紀(jì)泰勒的三個著名的科學(xué)管理實驗。其采用實驗方法研究管理問題,開創(chuàng)實證式管理研究先河,其科學(xué)地劃分工作元素的理念對計算機學(xué)科的工程化教學(xué)有著極高的理論指導(dǎo)意義。
(一)工程化教學(xué)可以提供科學(xué)的學(xué)習(xí)曲線,具體到編程語言教學(xué)中編程語言本身有著自身的特點和結(jié)構(gòu)層次,理解和掌握基礎(chǔ)知識點可以依照如下順序:
編程語言基礎(chǔ)知識點結(jié)構(gòu):
數(shù)據(jù)抽象→→表達式表達邏輯與運算→→循環(huán)和分支結(jié)構(gòu)控制邏輯與運算→→單個功能封裝成函數(shù)→→函數(shù)調(diào)用與庫的定義
對于基礎(chǔ)知識點按照以上順序結(jié)合工程化教學(xué),輔助使用硬件工具,根據(jù)項目要求中特定的硬件反饋和功能實現(xiàn)來解釋和幫助理解。從而基礎(chǔ)概念和知識點可以很好地轉(zhuǎn)化為實際應(yīng)用能力。在打好基礎(chǔ)后對諸如對象、繼承、抽象數(shù)據(jù)、狀態(tài)儲存、狀態(tài)和行為的統(tǒng)一封裝等進階知識點的理解將更清晰和深入。
(二) 工程化教學(xué)可以提供合理的教學(xué)規(guī)劃,教學(xué)目標(biāo)必須是一個有明確目的、過程、并經(jīng)過驗證的計劃,不能是無法預(yù)測結(jié)果的嘗試。工程化教學(xué)的第一步是制定多個可行的學(xué)習(xí)目標(biāo)或任務(wù),第二步是幫助學(xué)生制定學(xué)習(xí)路徑并了解目前所處位置及前進方向,第三步是將完成目標(biāo)或任務(wù)的知識點按學(xué)習(xí)路徑融入課程和教學(xué)計劃,第四步是以完成目標(biāo)或任務(wù)的程度作為學(xué)業(yè)考核的標(biāo)準(zhǔn)。
(三)工程化教學(xué)可以提升學(xué)生學(xué)習(xí)熱情,學(xué)生在學(xué)習(xí)之初大都抱有較高的求知欲,如何保持及提升這種主觀能動性是關(guān)鍵,工程化教學(xué)的優(yōu)勢在于能夠提供給學(xué)生在教學(xué)知識框架內(nèi)自由發(fā)揮的空間并且能夠?qū)⒎稚⒌闹R點融合在項目中,將枯燥的概念轉(zhuǎn)變?yōu)楸仨毷褂玫墓ぞ摺J沟瞄L時間學(xué)習(xí)產(chǎn)生厭煩情緒轉(zhuǎn)變?yōu)橥瓿身椖繚M足成功感的動力。
三、工程化教學(xué)與程序設(shè)計能力提升教學(xué)方式探索
(一) 教學(xué)方法設(shè)計
本次實踐的班級為4個共183名學(xué)生,課程包含《新工科試驗》《工程認(rèn)知與創(chuàng)新素質(zhì)培養(yǎng)》兩門課。采用美科公司的mcookie開源硬件套件作為輔助,套件使用c和c++作為編程語言。為了更加接近培養(yǎng)計劃及更有針對性,本次實踐的學(xué)生都具有c語言基礎(chǔ)并不要求通過期末考試。首先以問卷與問答方式設(shè)計調(diào)查統(tǒng)計內(nèi)容如下表,并在課程結(jié)束后再次采集相同選項數(shù)據(jù)作為工程化教學(xué)的效果對比,選項都與課程知識點相關(guān)。、
每個選項有3個分值,每個分值0-10分,分別對應(yīng)學(xué)生自評,課前評測,課后評測。學(xué)生自評主要了解學(xué)生在傳統(tǒng)教學(xué)后的自我能力評價,課前評測評價學(xué)生真正的應(yīng)用能力,采用問答、試卷、工程能力等多種方式。課后評測是在工程化教學(xué)之后進行,檢驗學(xué)生在工程化教學(xué)之后對選項知識點的掌握程度。
通過三個分值的統(tǒng)計比較,將會得到工程化教學(xué)與傳統(tǒng)教學(xué)對知識點掌握程度的差異數(shù)據(jù)。在課程中鼓勵學(xué)生發(fā)現(xiàn)問題,解決問題。在解決問題的過程中對知識點進行梳理和講解。
(二) 教學(xué)效果比較方案與結(jié)果分析
一個學(xué)期課程結(jié)束后各項分值統(tǒng)計如下:
知識點掌握人數(shù)
知識點分項 按學(xué)生填表和字?jǐn)?shù)統(tǒng)計(工程化教學(xué)前) 實測(工程化教學(xué)前) 課程結(jié)束依據(jù)項目評定統(tǒng)計(工程化教學(xué)后) 增長率((教學(xué)后-實測)/實測)%
通過增長率統(tǒng)計可以看出,經(jīng)過一學(xué)期的工程化教學(xué)實踐,學(xué)生的應(yīng)用能力得到明顯地提升,原本散亂的知識點歸納到有序的知識框架中并得到了項目應(yīng)用鍛煉。各項知識點在實際應(yīng)用環(huán)境中得以聯(lián)結(jié),項目的完成也對學(xué)生的學(xué)習(xí)自信心起到了極大的鼓舞作用。
四、結(jié)語
工程化教學(xué)區(qū)別于傳統(tǒng)教學(xué)在于不是死記硬背,而是理論聯(lián)系實際,看得見的成果和能力的體現(xiàn)。項目壓力與實踐過程奠定了編寫代碼的能力,通過。。。是學(xué)生掌握和理解項目流程、架構(gòu)、軟件工程所涉及的方方面面等等書本上的知識很好的途徑,并在學(xué)習(xí)過程中保持學(xué)習(xí)熱情,理論和實踐的緊密聯(lián)系能引發(fā)強烈的求知欲,引發(fā)求知欲是教學(xué)的重要目的,亦是工程化教學(xué)的初衷。
[1]Ricardo Zavala Yoé,? Ricardo A. Ramírez Mendoza.International Journal on Interactive Design and Manufacturing (IJIDeM), 2019, Vol.13 (4), pp.1353-1365
[2]Svante Gunnarsson. Automatic Control Education in a CDIO Perspective[J]. IFAC PapersOnLine,2017,50(1).
[3]高赟,張驥先,孔兵,張學(xué)杰.C語言程序設(shè)計課程中應(yīng)用能力的培養(yǎng)[J].計算機時代,2017(08):61-63.
作者簡介:
季萌(1973.7-),男,漢,籍貫:江蘇南通;助教,碩士;單位:上海杉達學(xué)院? 研究方向:數(shù)據(jù)工程