劉昌余,魯斌
(1.華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院,廣州 510642;2.五邑大學(xué)計(jì)算機(jī)學(xué)院,江門 529020)
探究非計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)改革
劉昌余1,魯斌2
(1.華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院,廣州510642;2.五邑大學(xué)計(jì)算機(jī)學(xué)院,江門529020)
隨著信息技術(shù)的高速發(fā)展,社會(huì)對(duì)復(fù)合型人才的需求日趨旺盛。如何在結(jié)合專業(yè)特色的同時(shí),培養(yǎng)以社會(huì)需求為中心的高質(zhì)量復(fù)合型人才,已成為高等教育興衰成敗的關(guān)鍵。作為一門交叉性和實(shí)踐性都很強(qiáng)的應(yīng)用型專業(yè),工業(yè)工程見證著我國制造業(yè)智能化發(fā)展過程。目前,關(guān)于國內(nèi)高等院校工業(yè)工程專業(yè)人才培養(yǎng)模式的劃分主要有四種[1],分別是:管理學(xué)學(xué)位、機(jī)電電氣類工學(xué)和管理學(xué)雙學(xué)位、機(jī)械類工學(xué)學(xué)位,以及其他類工學(xué)學(xué)位。同時(shí),關(guān)于工業(yè)工程專業(yè)課程體系的劃分主要有三種[2],分別是:分析與決策類課程、設(shè)計(jì)與改善類課程,以及控制類課程。在這個(gè)課程體系中,計(jì)算機(jī)編程語言類課程,例如:C語言課程、C++語言課程、或Java語言課程,是相關(guān)后續(xù)課程的基礎(chǔ)。
目前,在工業(yè)工程專業(yè)計(jì)算機(jī)編程語言類課程設(shè)置方面,華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院信息工程系開設(shè)了C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程。C++語言,作為C語言的升級(jí)版,不僅保留了其面向過程的所有優(yōu)點(diǎn),而且新增了一些諸如封裝、繼承和多態(tài)等面向?qū)ο蟮奶幚頇C(jī)制,同時(shí)較Java語言有更好的運(yùn)行效率。對(duì)于非計(jì)算機(jī)專業(yè)的工業(yè)工程學(xué)生來說,由于專業(yè)所涵蓋的課程類型差別較大,采用傳統(tǒng)針對(duì)計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程的教學(xué)方法已不能取得較好教學(xué)效果。同時(shí),為了更好地備戰(zhàn)即將開展的教育部普通高等學(xué)校本科教學(xué)評(píng)估工作,有必要也迫切需要對(duì)非計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程的教學(xué)改革進(jìn)行探究。
1.1課程基本情況分析
針對(duì)計(jì)算機(jī)專業(yè)和非計(jì)算機(jī)專業(yè)的不同需求,華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院每學(xué)年都開設(shè)了一系列C++/OOP(Object-Oriented Programming,面向?qū)ο蟪绦蛟O(shè)計(jì))課程。表1給出了2015-2016學(xué)年C++/OOP課程開設(shè)情況。
其中,C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程,作為工業(yè)工程專業(yè)的一門任選課,完整地且系統(tǒng)地介紹了面向?qū)ο蟪绦蛟O(shè)計(jì)基本思想和編程原理。該課程的基本情況如表2所示。通過此門課程的學(xué)習(xí),需要使學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計(jì)基本語法概念,熟練運(yùn)用C++語言進(jìn)行基本的面向?qū)ο蟪绦蛟O(shè)計(jì),具備用C++語言描述和解決現(xiàn)實(shí)世界中簡(jiǎn)單問題能力,并為后續(xù)課程的學(xué)習(xí),如算法分析與設(shè)計(jì)課程,及今后的軟件開發(fā)奠定良好的編程基礎(chǔ)。在選修該課程之前,要求已學(xué)習(xí)并掌握計(jì)算機(jī)應(yīng)用基礎(chǔ)和計(jì)算機(jī)導(dǎo)論等相關(guān)課程。課程教學(xué)的重點(diǎn)在于:三大基本語句、函數(shù)定義調(diào)用及參數(shù)傳遞、全局及局部變量、數(shù)組定義使用、數(shù)組與指針、指針與函數(shù)、類與對(duì)象、運(yùn)算符重載、友元函數(shù)和模板定義使用等。課程教學(xué)的難點(diǎn)在于:多維數(shù)組與指針、淺拷貝與深拷貝、內(nèi)聯(lián)函數(shù)、函數(shù)重載、虛函數(shù)、純虛函數(shù)、繼承與派生、和標(biāo)準(zhǔn)模板庫等。
表1 2015-2016學(xué)年華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院C++/OOP課程開設(shè)情況
表2 C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程基本情況
1.2教學(xué)存在問題分析
通過在華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院的教學(xué)實(shí)踐發(fā)現(xiàn),在面向工業(yè)工程專業(yè)的C++程序設(shè)計(jì)課程教學(xué)中主要存在以下一些問題:
(1)非計(jì)算機(jī)專業(yè)的學(xué)生缺乏該課程必要的一些先期基礎(chǔ)積累,導(dǎo)致某些章節(jié)的講解比較困難,學(xué)生要學(xué)的新知識(shí)點(diǎn)比較多,導(dǎo)致花在學(xué)習(xí)語法上的時(shí)間要遠(yuǎn)多于實(shí)踐上的時(shí)間,同時(shí)學(xué)習(xí)興趣也會(huì)有所降低;
(2)用于鞏固提升所學(xué)C++知識(shí)的后續(xù)相關(guān)進(jìn)階課程或?qū)嵺`較少。除了少量涉及用C++做畢業(yè)設(shè)計(jì)論文的之外,很多學(xué)生都會(huì)感覺到,在通過該課程的考核之后,再也不會(huì)用上這些已學(xué)的知識(shí)。因此,從一開始,大部分學(xué)生的學(xué)習(xí)目的不是很明確,都覺得沒有義務(wù)一定要學(xué)好該課程。
(3)從表1可以看出,目前在所列出的課程中,該課程無論是在實(shí)踐學(xué)時(shí)方面還是在總體學(xué)時(shí)方面,都是最少的,導(dǎo)致學(xué)完該課程之后,不少學(xué)生不能較好地實(shí)現(xiàn)一些簡(jiǎn)單實(shí)用的程序,也不能很好地運(yùn)用所學(xué)知識(shí)解決實(shí)際問題;
(4)面向計(jì)算機(jī)專業(yè)的C++考核機(jī)制不能很好地適應(yīng)非計(jì)算機(jī)專業(yè)的實(shí)際情況,導(dǎo)致考核方式不能有效激發(fā)學(xué)生學(xué)習(xí)動(dòng)力,以及考核結(jié)果不能全面體現(xiàn)學(xué)生學(xué)習(xí)情況和解決實(shí)際問題能力。
(5)目前的教學(xué)方式主要采用講授教學(xué)法,沒有充分發(fā)揮學(xué)生學(xué)習(xí)主觀能動(dòng)性,不能很好地調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣。同時(shí),相對(duì)而言,與驗(yàn)證型實(shí)驗(yàn)次數(shù)相比,綜合型設(shè)計(jì)實(shí)驗(yàn)次數(shù)相對(duì)較少,不利于培養(yǎng)學(xué)生對(duì)知識(shí)的系統(tǒng)把控力以及綜合素質(zhì)能力。
為有效地解決上述存在的一些教學(xué)問題,該課程教學(xué)迫切需要與時(shí)俱進(jìn)的改革措施。為此,本文對(duì)基于能力矩陣的C++課程教學(xué)改革進(jìn)行了探究。
該課程總體能力目標(biāo)定位為:理論學(xué)習(xí)方面,學(xué)生需要掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念和思想,以及C++應(yīng)用開發(fā)相關(guān)的基礎(chǔ)知識(shí);實(shí)踐學(xué)習(xí)方面,學(xué)生需要熟練采用一種C++工具,實(shí)現(xiàn)驗(yàn)證型實(shí)驗(yàn)和綜合型設(shè)計(jì)實(shí)驗(yàn)所要求的知識(shí)點(diǎn),同時(shí)具備數(shù)據(jù)庫及網(wǎng)絡(luò)等實(shí)戰(zhàn)應(yīng)用類型程序開發(fā)能力。相應(yīng)地,本文提出了一種用于實(shí)現(xiàn)上述總體能力目標(biāo)的非計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程能力實(shí)現(xiàn)矩陣,如表3所示。
3.1教學(xué)方式改革探究
(1)理論教學(xué)改革探究
在非計(jì)算機(jī)專業(yè)的編程課程教學(xué)中,首要的任務(wù)是培養(yǎng)學(xué)生學(xué)習(xí)興趣。從上述構(gòu)建的能力矩陣中可以看出,提倡以能力為導(dǎo)向的C++教學(xué)其實(shí)并沒有縮減所必須掌握的知識(shí)點(diǎn),而是在傳統(tǒng)的基礎(chǔ)上添加并優(yōu)化了面向能力培養(yǎng)的知識(shí)點(diǎn)。為在有限的學(xué)時(shí)條件下,能有效提升學(xué)習(xí)興趣且實(shí)現(xiàn)總體能力目標(biāo),需要在理論授課的過程中采用案例式教學(xué)法和主題式教學(xué)法。
案例式教學(xué)法方面,需要針對(duì)能力矩陣授課進(jìn)程安排,來精心準(zhǔn)備一些學(xué)生感興趣且可以參與其中的驗(yàn)證型和綜合型案例。案例式教學(xué)的主要作用在于,首先可以貫穿和融合原本分散的能力知識(shí)點(diǎn),其次可以分層進(jìn)階的方式突破教學(xué)重難點(diǎn),同時(shí)可以以生動(dòng)的方式展現(xiàn)編程課程魅力并提升學(xué)生學(xué)習(xí)的熱情。
表3 非計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程能力實(shí)現(xiàn)矩陣
主題式教學(xué)法方面,每隔一定數(shù)量的學(xué)時(shí)發(fā)布一些面向能力培養(yǎng)的兼具理論性和實(shí)踐性的主題,由學(xué)生自發(fā)分組合作收集相關(guān)資料,結(jié)合課下編程實(shí)踐形成匯報(bào)內(nèi)容,然后通過小組代表課堂研討或提交作品來檢查和展示所學(xué)成果。主題式教學(xué)可以有效更新和補(bǔ)充工業(yè)工程專業(yè)背景下的程序設(shè)計(jì)課程特有的知識(shí)點(diǎn),例如基于面向?qū)ο蟪绦虻闹悄苤圃臁?/p>
(2)實(shí)踐教學(xué)改革探究
能力與實(shí)踐總是分不開的,在程序設(shè)計(jì)課程學(xué)習(xí)中也是如此。由于能力的實(shí)現(xiàn)是一個(gè)漸進(jìn)的過程,因此需要漸進(jìn)的實(shí)踐。
首先,需要實(shí)施驗(yàn)證型實(shí)踐,來檢驗(yàn)已學(xué)的知識(shí)。針對(duì)理論教學(xué)中的一些關(guān)鍵知識(shí)點(diǎn),設(shè)計(jì)驗(yàn)證型程序設(shè)計(jì)作業(yè),或者在已配備的八學(xué)時(shí)實(shí)踐課上,當(dāng)堂使學(xué)生對(duì)剛學(xué)的知識(shí)進(jìn)行補(bǔ)缺查漏。
其次,需要綜合型實(shí)踐,來貫穿并系統(tǒng)化已學(xué)的知識(shí)。在理論課的一開始發(fā)布綜合型程序設(shè)計(jì)的要求和時(shí)間點(diǎn),讓學(xué)生自發(fā)分組。在理論課快結(jié)束的時(shí)候,采用現(xiàn)場(chǎng)分組答辯或者線下作品打分等方式,檢驗(yàn)所學(xué)知識(shí)是否已完整化和系統(tǒng)化。
最后,需要項(xiàng)目驅(qū)動(dòng)型實(shí)踐。根據(jù)華南農(nóng)業(yè)大學(xué)歷年發(fā)布的大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目名單,工業(yè)工程專業(yè)學(xué)生基本每年都能有省級(jí)或以上級(jí)別項(xiàng)目被立項(xiàng)。不過其中很少會(huì)有編程類型的項(xiàng)目。這也說明了項(xiàng)目驅(qū)動(dòng)型實(shí)踐教學(xué)還有很大的發(fā)展空間。未來需要在考慮能力培養(yǎng)的基礎(chǔ)上,從指導(dǎo)教師和學(xué)生兩個(gè)角度來綜合擬定參評(píng)項(xiàng)目。
3.2考核方式改革探究
以能力培養(yǎng)為導(dǎo)向的C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué),不僅需要在理論教學(xué)和實(shí)踐方面進(jìn)行教學(xué)改革,還需要在考核方式方面進(jìn)行教學(xué)改革。傳統(tǒng)的大部分課程都是采用了平時(shí)成績(jī)和期末成績(jī)進(jìn)行加權(quán)的方式進(jìn)行課程考核。這種方式無法避免有些學(xué)生臨時(shí)抱佛腳的心態(tài),也較難適應(yīng)新時(shí)代綜合型人才培養(yǎng)的需求。為此,從能力培養(yǎng)的角度上變更了該課程考核方式,使得最終的成績(jī)由平時(shí)成績(jī)、期末成績(jī)和實(shí)踐成績(jī)?nèi)糠謽?gòu)成。其中,平時(shí)成績(jī)主要由課堂考勤、隨堂測(cè)驗(yàn)、和課后作業(yè)三塊構(gòu)成;期末成績(jī)主要由選擇題和判斷題,以及填空題和編程題等構(gòu)成;實(shí)踐成績(jī)主要由平時(shí)驗(yàn)證型上機(jī)實(shí)踐和期末綜合型課程設(shè)計(jì)構(gòu)成。未來需要在實(shí)踐成績(jī)中納入大創(chuàng)等類型已立項(xiàng)相關(guān)項(xiàng)目加分項(xiàng),以及課堂討論及研討加分項(xiàng)。除了教學(xué)方式和考核方式外,還需要對(duì)之前實(shí)施的教學(xué)大綱進(jìn)行改革。圍繞課程能力實(shí)現(xiàn)矩陣,調(diào)整C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程大綱各個(gè)子模塊內(nèi)容。例如,在教學(xué)難點(diǎn)小節(jié)中,需要引入進(jìn)階式的實(shí)踐性難點(diǎn)。進(jìn)而從教學(xué)源頭來頂層設(shè)計(jì)能力培養(yǎng)大框架。
本文結(jié)合筆者在華南農(nóng)業(yè)大學(xué)數(shù)學(xué)與信息學(xué)院的任教經(jīng)歷,提出了基于能力矩陣的C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)改革方案,主要內(nèi)容包括構(gòu)建課程能力矩陣和探究基于能力矩陣的課程教學(xué)改革措施。未來的工作,需要在調(diào)研工業(yè)工程專業(yè)的核心能力指標(biāo)體系基礎(chǔ)上,細(xì)化目前的課程能力實(shí)現(xiàn)矩陣,并加權(quán)其中的核心能力的授課安排。
[1]陳友玲,張浩,王成明.21世紀(jì)工業(yè)工程專業(yè)建設(shè)及人才培養(yǎng)[J].重慶大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2003,9(6):141-142.
[2]劉利軍.高校工業(yè)工程專業(yè)建設(shè)探討[J].中國現(xiàn)代教育裝備,2007,10:85-86.
[3]鄭莉,董淵,何江舟.C++語言程序設(shè)計(jì)(第4版)[M].北京:清華大學(xué)出版社,2010.
Non-Computer Majors;Object-Oriented Programming in C++;Teaching Reform;Ability Cultivation
Research on the Teaching Reformation of C++Object-Oriented Programming for Non-Computer Majors
LIU Chang-yu1,LU Bin2
(1.College of Mathematics and Informatics,South China Agricultural University,Guangzhou 510642;2.School of Computer Science,Wuyi University,Jiangmen 529020)
1007-1423(2016)24-0050-04DOI:10.3969/j.issn.1007-1423.2016.24.013
劉昌余(1984-),男,工學(xué)博士,講師,研究方向?yàn)槭录z測(cè)、計(jì)算機(jī)應(yīng)用,Email:yezhich@gmail.com
2016-08-10
2016-08-18
針對(duì)非計(jì)算機(jī)專業(yè)C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)中普遍存在的問題,提出以能力培養(yǎng)為導(dǎo)向的教學(xué)改革方案。該方案,首先選取所任教的華南農(nóng)業(yè)大學(xué)工業(yè)工程專業(yè)開設(shè)的C++課程作為教學(xué)改革對(duì)象,并分析目前該課程的基本情況和教學(xué)中存在的一些主要問題。其次,從能力指標(biāo)分解和授課進(jìn)程安排兩方面,構(gòu)建非計(jì)算機(jī)專業(yè)C++課程能力實(shí)現(xiàn)矩陣。最后,從教學(xué)方式和考試方式兩方面,探究面向能力導(dǎo)向的C++教學(xué)改革措施。
非計(jì)算機(jī)專業(yè);C++面向?qū)ο蟪绦蛟O(shè)計(jì);教學(xué)改革;能力培養(yǎng)
廣東省科技計(jì)劃項(xiàng)目(No.2016A020210103)、五邑大學(xué)博士啟動(dòng)金項(xiàng)目(No.2014BS07)
魯斌,男,講師,研究方向?yàn)閺?fù)雜網(wǎng)絡(luò)、計(jì)算機(jī)應(yīng)用
To solve prevalent teaching problems in C++Object-Oriented Programming course for non-computer majors,proposes an ability cultivation oriented teaching reform solution.Firstly,chooses the C++course of the industrial engineering major in South China Agricultural U-niversity as the teaching reform target,and analyzes current situation as well as main issues in the teaching of the course in the solution. Secondly,constructs an ability realization matrix of C++course for non-computer majors based on ability index decomposition and teaching process arrangement in the solution.Finally,explores ability cultivation oriented teaching reform measures of C++object-oriented programming from aspects of teaching approaches and examination approaches in the solution.