朱艷平
(信陽農(nóng)林學(xué)院 信息工程學(xué)院,河南 信陽 464000)
所謂應(yīng)用型本科是指以應(yīng)用型為辦學(xué)定位,是本科層次的職業(yè)技術(shù)教育,是職業(yè)教育的高級(jí)化[1]。其人才培養(yǎng)的定位是在具有一定理論基礎(chǔ)的前提下,具有較強(qiáng)的動(dòng)手實(shí)踐能力、創(chuàng)新能力、職業(yè)拓展能力和繼續(xù)深造能力[2]。在應(yīng)用型本科院校計(jì)算機(jī)類的相關(guān)專業(yè)中,軟件開發(fā)類課程占了很大的比重。這類課程具有較強(qiáng)的實(shí)踐性、工程性,更強(qiáng)調(diào)提高動(dòng)手能力,解決實(shí)際問題[3]。隨著智能手機(jī)和平板的普及,移動(dòng)應(yīng)用開發(fā)也已成為熱門[4-5]。作為主流移動(dòng)端操作系統(tǒng)的Android,人才出現(xiàn)了較大的缺口,人才培養(yǎng)顯得尤為重要[6]。
軟件開發(fā)類課程具有共同的特點(diǎn),即要求學(xué)生的動(dòng)手實(shí)踐能力強(qiáng)。而現(xiàn)階段該類課程也存在著共性的問題,就是難以在“理論”和“實(shí)踐”之間做出平衡,很難達(dá)到理想的教學(xué)效果。本文以“Android移動(dòng)開發(fā)技術(shù)”為例,對(duì)軟件開發(fā)類的課程進(jìn)行研究,提出改革方案。
以信陽農(nóng)林學(xué)院網(wǎng)絡(luò)工程專業(yè)為例,對(duì)其課程體系進(jìn)行分析。“Android移動(dòng)開發(fā)技術(shù)”在第4學(xué)期開設(shè),“Java Web軟件開發(fā)”和“軟件工程”在第6學(xué)期,并在第7學(xué)期開設(shè)了“Android高級(jí)應(yīng)用”。學(xué)習(xí)Android開發(fā),需要具備Java Web的相關(guān)知識(shí)。而從上述課程體系中可以看出,“Java Web軟件開發(fā)”是在“Android移動(dòng)開發(fā)技術(shù)”之后開設(shè),不利于Android知識(shí)的學(xué)習(xí)。另外,作為軟件開發(fā)類課程,倡導(dǎo)項(xiàng)目教學(xué),可作為項(xiàng)目管理的“軟件工程”卻在第6學(xué)期才開設(shè),不利于項(xiàng)目教學(xué)的展開。最后,“Android高級(jí)應(yīng)用”開設(shè)在第7學(xué)期,不利于知識(shí)的連續(xù)性。
對(duì)于“Android移動(dòng)開發(fā)技術(shù)”課程也存在著下述問題:講授內(nèi)容很難在“理論”和“實(shí)踐”之間做出平衡;上課時(shí)間不集中,學(xué)生往往學(xué)完之后沒能及時(shí)復(fù)習(xí),再上課時(shí)就把前面所學(xué)的知識(shí)全忘記了;雖然采用案例教學(xué),但案例的選擇并不科學(xué);現(xiàn)有教材并不能滿足教學(xué)的需要。另外,學(xué)生對(duì)學(xué)習(xí)軟件開發(fā)類課程的興趣不高,當(dāng)在學(xué)習(xí)過程中遇到困難時(shí),容易產(chǎn)生放棄的念頭。
根據(jù)“Android移動(dòng)開發(fā)技術(shù)”教學(xué)存在的問題,提出如下改革策略。
作為前導(dǎo)課程的“Java Web軟件開發(fā)”和項(xiàng)目管理的“軟件工程”,應(yīng)在“Android移動(dòng)開發(fā)技術(shù)”之前開設(shè);“Android高級(jí)應(yīng)用”作為“Android移動(dòng)開發(fā)技術(shù)”的后續(xù)課程,應(yīng)緊跟其后進(jìn)行開設(shè),中間不要間隔學(xué)期。
首先要研究學(xué)生的學(xué)習(xí)曲線,學(xué)生在學(xué)習(xí)軟件開發(fā)類課程時(shí)要經(jīng)歷3個(gè)階段,即單詞階段、語句階段和邏輯階段。單詞階段是記不住代碼中關(guān)鍵字的拼寫,語句階段是記不住代碼中語句的語法,邏輯階段是弄不清完成項(xiàng)目需求的業(yè)務(wù)邏輯。因此,學(xué)生在寫程序時(shí)就存在著兩大瓶頸:(1)處于單詞階段和語句階段的學(xué)生過不了編譯這一關(guān);(2)處于邏輯階段的學(xué)生如何從抄代碼過渡到自己寫代碼。
根據(jù)學(xué)生的上述特點(diǎn),可將講授內(nèi)容分為3個(gè)階段。(1)Android知識(shí)講解,采用案例教學(xué),演示示例代碼,學(xué)生抄代碼。(2)做小項(xiàng)目,要求學(xué)生按流程抄代碼。(3)做一個(gè)大項(xiàng)目,綜合使用前面所學(xué)內(nèi)容。案例和項(xiàng)目的選擇要符合以下要求:要覆蓋若干個(gè)核心知識(shí)點(diǎn),具有分層性;要貼近生活實(shí)際、生動(dòng)有趣;規(guī)模適當(dāng);難度適中。
與信陽農(nóng)林學(xué)院有合作關(guān)系的企業(yè),他們會(huì)用4個(gè)月的時(shí)間集中培訓(xùn)學(xué)員,使其具備Android應(yīng)用開發(fā)的能力,其總學(xué)時(shí)可達(dá)到618學(xué)時(shí)。而在學(xué)校一般情況下,“Android移動(dòng)開發(fā)技術(shù)”的總學(xué)時(shí)為72學(xué)時(shí),再加上后續(xù)開設(shè)的“Android高級(jí)應(yīng)用”的72學(xué)時(shí),總學(xué)時(shí)才為144學(xué)時(shí),且每周只有4學(xué)時(shí)。為了提高教學(xué)效果,可采用集中授課的方式,將該門課的授課時(shí)間集中在學(xué)期的前幾周或是后幾周進(jìn)行。
(1)畫分析圖:為了使學(xué)生對(duì)如何實(shí)現(xiàn)項(xiàng)目需求有整體的認(rèn)知,需要分模塊畫出項(xiàng)目的業(yè)務(wù)流程圖和數(shù)據(jù)流圖,以及各個(gè)類之間的關(guān)系圖。
(2)做筆記:為了便于學(xué)生的復(fù)習(xí),教師在講授過程中需要做筆記,將講授的知識(shí)點(diǎn)、畫的分析圖以及關(guān)鍵操作步驟的截圖放在筆記中。學(xué)生在課后復(fù)習(xí)的時(shí)候,有哪里不清楚,看一下筆記就一目了然了。
(3)代碼中做注釋:教師在講授過程中,要堅(jiān)持自己寫代碼,不提倡復(fù)制粘貼代碼,以提高自身的代碼能力。并要求嚴(yán)格遵守代碼規(guī)范,做好注釋。這樣學(xué)生再看教師寫的代碼,才知道是什么意思。
(4)版本教學(xué):由于所選案例和項(xiàng)目具有分層性,故可按項(xiàng)目功能的多少進(jìn)行版本教學(xué),后一版本是在前一版本上增加了新的功能。結(jié)合版本比較軟件Beyond Compare的使用,使學(xué)生更容易理解和掌握。
(5)教與練相結(jié)合:為了實(shí)現(xiàn)教與練相結(jié)合,可采用教學(xué)做一體化,實(shí)踐教學(xué)層次化的方法。教學(xué)采用模塊教學(xué),案例教學(xué),項(xiàng)目教學(xué);學(xué)生組建項(xiàng)目團(tuán)隊(duì),采取幫扶策略,1個(gè)團(tuán)隊(duì)由1名優(yōu)秀生,2~3名中等生和1名差生構(gòu)成;鼓勵(lì)并指導(dǎo)學(xué)生參加各種競(jìng)賽;加強(qiáng)校企合作,使其成為學(xué)校教學(xué)的有力補(bǔ)充。
(6)提供給學(xué)生自學(xué)資料:可提供給學(xué)生一些技術(shù)論壇、博客,網(wǎng)絡(luò)視頻課,教學(xué)資源庫等自學(xué)資源,教會(huì)學(xué)生利用這些資源擴(kuò)展自己的知識(shí)面,解決遇到的實(shí)際困難。
(7)語言的藝術(shù):軟件開發(fā)類的課程專業(yè)詞匯多,開展項(xiàng)目的過程復(fù)雜,學(xué)生不容易理解。如何把授課內(nèi)容講得通俗易懂,且具有幽默感,讓學(xué)生樂于與教師互動(dòng),這是每一個(gè)計(jì)算機(jī)教師都應(yīng)該修煉的語言藝術(shù)。
大多數(shù)院校一門課的成績往往由期末考試來衡量,這種考核方式并不能顯示出學(xué)生實(shí)際開發(fā)能力的強(qiáng)弱。因此取消期末考試,成績的評(píng)定由以下幾個(gè)部分構(gòu)成:平時(shí)出勤率占20%、案例和小項(xiàng)目的實(shí)現(xiàn)情況占30%、課程設(shè)計(jì)成績占50%,另外還要考慮學(xué)生的實(shí)訓(xùn)情況和參加競(jìng)賽情況。考核方式變得多元化,才能綜合評(píng)定學(xué)生對(duì)該門課的掌握情況。
教師在多年的教學(xué)過程中,積累了豐富的經(jīng)驗(yàn)。選擇教學(xué)案例和小項(xiàng)目的時(shí)候,更是費(fèi)盡心血。有些案例是來源于學(xué)生,并不斷加以精煉的。故教師可將這些案例和小項(xiàng)目作為基礎(chǔ),編寫該類課程的配套教材,這將成為此類課程能夠取得良好教學(xué)效果的有力保障。
本文分析了應(yīng)用型本科軟件開發(fā)類課程的共同特點(diǎn),并以“Android移動(dòng)開發(fā)技術(shù)”為例,闡述目前該類課程教學(xué)存在的問題,以及如何從課程體系、授課內(nèi)容、授課時(shí)間、教學(xué)方法、考核方式以及教材編寫等幾個(gè)方面進(jìn)行改革。這對(duì)激發(fā)學(xué)生的學(xué)習(xí)興趣、提高其動(dòng)手實(shí)踐能力、項(xiàng)目研發(fā)能力和自學(xué)能力起著積極的促進(jìn)作用。