吳正江+高巖
【摘要】面向計算機(jī)專業(yè)的研究生開設(shè)“面向?qū)ο蟪绦蛟O(shè)計”課程存在學(xué)生基礎(chǔ)不一致、需求不一致等實(shí)際情況。文章分析了這門課程在教材、內(nèi)容設(shè)計、考核方面所面臨的一些問題,借鑒輕量化軟件設(shè)計思想,提出以項(xiàng)目為主線、翻轉(zhuǎn)課堂為基礎(chǔ)、主動教學(xué)為實(shí)現(xiàn)手段的課程內(nèi)容設(shè)置的一些想法和建議。
【關(guān)鍵詞】“面向?qū)ο蟪绦蛟O(shè)計”;研究生培養(yǎng);輕量化教學(xué);項(xiàng)目教學(xué);翻轉(zhuǎn)課堂
一、背景介紹
2015年教育部出臺了《關(guān)于改進(jìn)和加強(qiáng)研究生課程建設(shè)的意見》,在研究生的培養(yǎng)工作上,要求一方面要重視研究生課程在研究生培養(yǎng)過程中的積極引導(dǎo)作用,另一方面要求尊重研究生的主體地位,鼓勵研究生參與教學(xué)設(shè)計、教學(xué)改革和教學(xué)評價。對于計算機(jī)專業(yè)碩士及學(xué)術(shù)碩士來說,“面向?qū)ο蟪绦蛟O(shè)計”是一門專業(yè)類型的基礎(chǔ)課,其目的在于培養(yǎng)學(xué)生面向?qū)ο缶幊痰乃季S,并進(jìn)一步提升學(xué)生的創(chuàng)新、合作及實(shí)踐能力。
面向?qū)ο蟪绦蛟O(shè)計語言是目前軟件行業(yè)的主流,面向?qū)ο蟪绦蛟O(shè)計語言具有開發(fā)和使用簡單、容易模塊化、開放、健壯、平臺無關(guān)性等優(yōu)點(diǎn)。2017年上半年最流行的5種編程語言中,面向?qū)ο蟪绦蛟O(shè)計語言占了4種,它們分別是JAVA(第一位)、C++(第三位)、Python(第四位)、C#(第五位)。唯一的面向過程的程序設(shè)計語言C語言占據(jù)第二位,足見市場對于面向?qū)ο箢惓绦蛟O(shè)計語言的偏愛。
現(xiàn)階段,隨著IT行業(yè)成為社會上月薪最高的行業(yè),越來越多的學(xué)生開始學(xué)習(xí)計算機(jī)專業(yè)相關(guān)課程,在考研過程中選擇計算機(jī)專業(yè)。而在研究生層面,計算機(jī)大專業(yè)分化出大量的分支學(xué)科,學(xué)生對于計算機(jī)語言的興趣及研究日益多樣化,使得計算機(jī)專業(yè)的專業(yè)碩士及學(xué)術(shù)碩士的專業(yè)基礎(chǔ)課程在設(shè)置方面特別是在課程內(nèi)容方面面臨著其他專業(yè)所沒有的困境和挑戰(zhàn)。
二、面臨的困境與挑戰(zhàn)
研究生階段的教育有別于本科階段教育。本科階段的教學(xué)以系統(tǒng)性、循序漸進(jìn)、完整性為基本特點(diǎn),其目的是輔助學(xué)生學(xué)習(xí)相應(yīng)的課程內(nèi)容;而研究生階段的課程設(shè)定應(yīng)以引導(dǎo)學(xué)生學(xué)習(xí)為主,因?yàn)檠芯可A(chǔ)及其期望比較分散,這與本科生統(tǒng)一大綱要求,統(tǒng)一學(xué)習(xí)目標(biāo)有著較大的差異。因此,我們面向研究生設(shè)置課程時,既要考慮程序設(shè)計類課程體系、知識性的要求,也要考慮課程對于學(xué)生創(chuàng)新精神和合作精神的培養(yǎng)。實(shí)踐過程中會面臨如下困境與挑戰(zhàn)。
(一)學(xué)生基礎(chǔ)多元化
時至今日,計算機(jī)大類研究生入門考試多數(shù)是以C語言為基礎(chǔ)進(jìn)行考核,這導(dǎo)致很多非計算機(jī)專業(yè)學(xué)生可以在不掌握面向?qū)ο蟪绦蛟O(shè)計的條件下通過研究生入學(xué)考試。但是,因?yàn)檫@些學(xué)生在原有專業(yè)上具有比較優(yōu)勢,加之近年計算機(jī)在各行業(yè)的大量應(yīng)用,社會也比較認(rèn)同這類跨專業(yè)的研究生,有些導(dǎo)師也樂于指導(dǎo)這類研究生。這類學(xué)生在研究生階段系統(tǒng)地學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計語言,體會面向?qū)ο笤O(shè)計思想及理念是十分有必要的。
另一方面,本專業(yè)考取研究生的學(xué)生經(jīng)過計算機(jī)專業(yè)系統(tǒng)的學(xué)習(xí),已經(jīng)掌握一至兩種面向?qū)ο蟪绦蛟O(shè)計語言。面向此類學(xué)生開設(shè)的課程需要有一個更高層次的要求,而不能僅僅停留在簡單的代碼講解及實(shí)現(xiàn)這一層面。
在現(xiàn)實(shí)中將這兩種學(xué)生合班上課就會面臨學(xué)生基礎(chǔ)多元化的挑戰(zhàn)。
(二)學(xué)生需要多元化
研究生的學(xué)習(xí)方向與本科分專業(yè)學(xué)習(xí)方式有很大的不同。研究生由于學(xué)習(xí)方向、研究內(nèi)容決定了其使用程序設(shè)計語言的多樣性。例如學(xué)習(xí)方向?yàn)閳D形圖像和控制系統(tǒng)的學(xué)生,其主要使用Matlab進(jìn)行仿真;研究物聯(lián)網(wǎng)與密碼學(xué)的學(xué)生則主要使用C++;研究數(shù)據(jù)挖掘方向的學(xué)生主要學(xué)習(xí)Java、Python。
(三)教材內(nèi)容不夠具體
現(xiàn)階段“面向?qū)ο蟪绦蛟O(shè)計”課程所使用的教材,包括網(wǎng)上資源或其他線下資源多為具體編程方法,所假想受眾為掌握某種語言的學(xué)習(xí)者,對于存在差異性基礎(chǔ)的學(xué)生而言適應(yīng)性較差,尤其是對于研究生而言,這個階段學(xué)習(xí)需要著重加強(qiáng)的創(chuàng)新性、合作性培養(yǎng)體現(xiàn)不夠充分。
基于上述三個原因,將一種面向?qū)ο蟮某绦蛟O(shè)計語言系統(tǒng)地、詳細(xì)地在研究生階段講解,雖然可以給沒有相關(guān)基礎(chǔ)的學(xué)生補(bǔ)課,但會使本科階段學(xué)過該課程的學(xué)生重復(fù)學(xué)習(xí),從而失去學(xué)習(xí)興趣,浪費(fèi)了寶貴的學(xué)習(xí)時間。因此,通過該課程讓學(xué)生體會面向?qū)ο蟪绦蛟O(shè)計的思想,理解程序編寫在科研實(shí)踐中的實(shí)現(xiàn)手段及意義,并建立一種引導(dǎo)性質(zhì)的課程框架是非常有必要的。
三、項(xiàng)目引導(dǎo)的翻轉(zhuǎn)主動學(xué)習(xí)
當(dāng)軟件設(shè)計者設(shè)計框架時,為了兼容底層多樣化實(shí)現(xiàn),設(shè)計者多會使用越來越輕量化的框架,雖然會降低一定的實(shí)現(xiàn)效率,但是更好的適應(yīng)性、兼容性及不依賴于原生系統(tǒng)的特點(diǎn)給開發(fā)者帶來了很大的便利。
研究生教學(xué)所面臨的困難與軟件在輕量化過程中解決的問題性質(zhì)是一致的。輕量化框架的優(yōu)勢也可以類似地解決研究生階段面向?qū)ο蟪绦蛟O(shè)計課程中的問題: (1)非侵略性API,映射到課程教育中,代表著在學(xué)生原有知識體系上構(gòu)建新的知識體系,能為研究生的自由發(fā)展提供基礎(chǔ)性保證;(2)對容器依賴性低,在課程體系中表現(xiàn)為可以讓新的課程適應(yīng)于更復(fù)雜的學(xué)生,讓課程可以既適應(yīng)跨專業(yè)學(xué)生,又適合于本專業(yè)的學(xué)生;(3)易于通用,可以匹配學(xué)生在研究生階段中分散的學(xué)習(xí)目標(biāo);(4)啟動時間短,可以讓學(xué)生快速地融入課程,加入學(xué)習(xí)過程中。
輕量化教學(xué)在“面向?qū)ο蟪绦蛟O(shè)計”課程上應(yīng)用可以從以下幾個方面進(jìn)行。
第一,引入案例教學(xué)。從生活及研究案例出發(fā),從設(shè)計角度對案例進(jìn)行討論,可以從思想上對于面向?qū)ο蟮某绦蛟O(shè)計產(chǎn)生直觀、感性方面的認(rèn)識。案例化教學(xué)可以讓學(xué)生快速融入課程。案例設(shè)計可以將基礎(chǔ)知識融入其中,通過引導(dǎo)學(xué)生從多個角度探討案例,可以使學(xué)生從多方面、多角度學(xué)習(xí)、復(fù)習(xí)已有知識。
第二,引入翻轉(zhuǎn)課堂。翻轉(zhuǎn)課堂的引入,讓學(xué)生將基礎(chǔ)學(xué)習(xí)階段下放到課下,而將驗(yàn)收及應(yīng)用階段放到課堂上,可以方便教師有效地監(jiān)督、了解學(xué)生的學(xué)習(xí)進(jìn)度,方便教師監(jiān)督不同基礎(chǔ)的學(xué)生的學(xué)習(xí)進(jìn)度。教師通過在課堂上對學(xué)生回答的問題進(jìn)行點(diǎn)評及使用問題不斷引導(dǎo)學(xué)生思考完成項(xiàng)目。
第三,分組討論、競爭發(fā)言為主的學(xué)習(xí)手段,教師點(diǎn)評及輔導(dǎo)為主的教學(xué)手段。小組討論是多名學(xué)生共同完成的結(jié)果,討論過程中可以讓學(xué)生對知識體系獨(dú)立思考,并通過頭腦風(fēng)暴的方法對一個問題提出盡可能多的解決方案。同時可以在原有知識基礎(chǔ)上,通過小組討論的方式選優(yōu),快速吸收外界的知識,有助于培養(yǎng)學(xué)生的創(chuàng)新思維。這種方式的課程體系更容易在教學(xué)實(shí)踐中展開,也可以按學(xué)生具體的知識層次進(jìn)行動態(tài)、靈活的微調(diào),以期達(dá)到更優(yōu)的教學(xué)目的。
上述幾個方面是相輔相成的,一切以翻轉(zhuǎn)課堂為基礎(chǔ),以案例教學(xué)為主線,以分組討論發(fā)言,教師點(diǎn)評為主要教學(xué)方式。將基礎(chǔ)語法的學(xué)習(xí)放到課下,有利于不同基礎(chǔ)、不同需求的學(xué)生開展自主學(xué)習(xí)。在課堂上學(xué)生分組討論案例,可以充分調(diào)動學(xué)生的學(xué)習(xí)積極性、主動性,讓不同專業(yè)的學(xué)生可以站在各自角度對同一問題發(fā)表自己的意見,通過分組發(fā)言的方式讓學(xué)生之間相互借鑒思想,讓組內(nèi)學(xué)生相互合作,形成研究生的競爭合作模式。通過教師點(diǎn)評、講解問題的方式,講授面向?qū)ο蟪绦蛟O(shè)計的設(shè)計理念、程序設(shè)計過程中所考量的問題及其解決方案。
四、教學(xué)實(shí)施和效果總結(jié)
綜合翻轉(zhuǎn)課堂、分組討論、案例教學(xué)的三大特征的面向?qū)ο蟮某绦蛟O(shè)計課程,在組織形式上滿足了研究生的學(xué)習(xí)需求。在教育過程中,一方面讓研究生學(xué)習(xí)了相應(yīng)的課程知識,另一方面培養(yǎng)了研究生的合作與創(chuàng)新意識。
在實(shí)踐過程中,將學(xué)生按自主與隨機(jī)組合的原則劃分為5~6個小組,每小組控制在4~5人,在課堂上所有提問及發(fā)言都以小組為單位,在討論后統(tǒng)一意見公開展示。在職能上,教師在每次課堂中擔(dān)任主持者,主要任務(wù)是出題,點(diǎn)評各小組答案,并將問題最終導(dǎo)向解決方案的職能。對學(xué)生考評以小組為單位,其方法是每次討論結(jié)束后對每個小組進(jìn)行排名,每組最終排名決定該組中優(yōu)秀、良好、中等學(xué)生的數(shù)量。
經(jīng)過實(shí)踐,該方法收到了較好的效果。學(xué)生反映自己在課堂上積極思考,通過參與問答互動,更注意教師所傳授的知識,課程參與程度提高的同時,課堂學(xué)習(xí)、課后完成練習(xí)及思考的積極性也極大提高,對于教師講授的內(nèi)容也有較深的印象。
這樣的課程設(shè)置從目標(biāo)上契合了教育部對于碩士研究生培養(yǎng)工作的思路。學(xué)生通過本課程的學(xué)習(xí),不僅學(xué)到了相關(guān)知識,也培養(yǎng)了創(chuàng)新思維及合作意識,對于碩士研究生之后的課程學(xué)習(xí)與研究工作的開展是積極有益的。
【參考文獻(xiàn)】
[1]中華人民共和國教育部.教育部關(guān)于改進(jìn)和加強(qiáng)研究生課程建設(shè)的意見[EB/OL].http://www.gov.cn/gongbao/content/2015/content_2838177.htm,2014-12-05.
[2]余虓.略析碩士研究生與本科生課堂教學(xué)講授方式的主要區(qū)別[J].學(xué)校黨建與思想教育,2016(11):62-65.
[3]馬洪霞.“C++程序設(shè)計”課程教學(xué)與創(chuàng)新型人才培養(yǎng)[J].電氣電子教學(xué)學(xué)報,2011,33(04):14-15.
[4]張麗麗.研究生課堂教學(xué)創(chuàng)新思維的培養(yǎng)[J].學(xué)理論,2013(23):299-300.
[5]鮑威,張倩.擴(kuò)招后我國研究生入學(xué)選擇的實(shí)證研究[J].復(fù)旦教育論壇,2009,7(05):5-11.
[6]陳盛雄,羅艷霞,陳超,等.反向控制原理和面向切面編程在Spring中的應(yīng)用[J].計算機(jī)與信息技術(shù),2006(12):66-68,71.
[7]謝曉霞,羅鵬飛,張文明.翻轉(zhuǎn)課堂在研究生核心課程中的實(shí)證研究[J].高等教育研究學(xué)報,2016,39(02):38-42.