孫小華
摘 ? 要:在高職院校移動應(yīng)用開發(fā)專業(yè)“高等數(shù)學(xué)”課程綜合實踐中加入相關(guān)知識進(jìn)行教學(xué)探索。文章以移動應(yīng)用開發(fā)中經(jīng)常用到的碰撞檢測為例,在“高等數(shù)學(xué)”課程綜合實踐中進(jìn)行教學(xué),可以提高高職院校移動應(yīng)用開發(fā)人才的培養(yǎng)質(zhì)量,為其今后的實習(xí)與工作打好相關(guān)的數(shù)學(xué)理論基礎(chǔ),提升移動應(yīng)用開發(fā)專業(yè)學(xué)生的數(shù)學(xué)實踐能力。
關(guān)鍵詞:高等數(shù)學(xué);課程綜合實踐;移動應(yīng)用開發(fā);碰撞檢測
近年來,在“互聯(lián)網(wǎng)+”戰(zhàn)略“大眾創(chuàng)業(yè)、萬眾創(chuàng)新”的推動下,我國移動應(yīng)用市場的應(yīng)用數(shù)量呈現(xiàn)爆發(fā)性增長。根據(jù)工信部的調(diào)查統(tǒng)計,截至2018年12月,我國市場中的移動應(yīng)用累計數(shù)量達(dá)到449萬款。移動互聯(lián)網(wǎng)產(chǎn)業(yè)的高速發(fā)展產(chǎn)生了大量的移動互聯(lián)網(wǎng)開發(fā)人才需求,據(jù)統(tǒng)計,2014年我國移動互聯(lián)網(wǎng)行業(yè)應(yīng)用開發(fā)人員需求量是200多萬,但由于移動應(yīng)用開發(fā)人才培養(yǎng)的滯后,實際從業(yè)人員不到70萬人。為此,2015年教育部在《普通高等學(xué)校高等職業(yè)教育(??疲I(yè)目錄(2015年)》中新增加了移動應(yīng)用開發(fā)專業(yè)(專業(yè)代碼:610212)。國內(nèi)已經(jīng)有一些高職院校申請開設(shè)移動應(yīng)用開發(fā)專業(yè),有的院校已開設(shè)了軟件開發(fā)專業(yè)(移動應(yīng)用開發(fā)方向)。
目前,移動應(yīng)用開發(fā)技術(shù)人才培養(yǎng)的任務(wù)主要由各類教育培訓(xùn)機(jī)構(gòu)如達(dá)內(nèi)科技、北大青鳥、華清遠(yuǎn)見等完成,學(xué)員沒有經(jīng)過體系化、延續(xù)化的培訓(xùn),從業(yè)人員的素質(zhì)與數(shù)量都遠(yuǎn)遠(yuǎn)落后于行業(yè)發(fā)展需求,無法滿足社會需求。而且移動應(yīng)用開發(fā)專業(yè)涉及的信息技術(shù)發(fā)展迅猛,知識更新很快,除了傳統(tǒng)的技術(shù)之外,還涉及HTML5、云計算、傳感器等方面的知識。在進(jìn)行移動應(yīng)用軟件開發(fā)的過程中,開發(fā)人員經(jīng)常需要用到許多數(shù)學(xué)知識,如坐標(biāo)系變換、碰撞檢測、數(shù)據(jù)排序等。高職院校軟件開發(fā)專業(yè)(移動應(yīng)用開發(fā)方向)雖然一般都開設(shè)了“高等數(shù)學(xué)”課程,但重點內(nèi)容是微積分及其應(yīng)用,沒有涉及移動應(yīng)用開發(fā)中實際需要用到的數(shù)學(xué)知識。因此,為了提高高職院校移動應(yīng)用開發(fā)人才的培養(yǎng)質(zhì)量,為他們今后的實習(xí)與工作打好相關(guān)的數(shù)學(xué)理論基礎(chǔ),亟需提升移動應(yīng)用開發(fā)專業(yè)學(xué)生的數(shù)學(xué)實踐能力,在高職院校移動應(yīng)用開發(fā)專業(yè)“高等數(shù)學(xué)”課程綜合實踐中加入相關(guān)知識進(jìn)行教學(xué)探索[1]。
1 ? ?學(xué)情分析
參加“高等數(shù)學(xué)”課程綜合實踐的學(xué)生為移動應(yīng)用開發(fā)專業(yè)的大一學(xué)生,已初步掌握了“高等數(shù)學(xué)”和移動應(yīng)用開發(fā)相關(guān)專業(yè)的基本理論知識(如Java語言等),初步具備了移動應(yīng)用開發(fā)專業(yè)的基本專業(yè)技能,但缺乏綜合實踐和交叉應(yīng)用的能力。
2 ? ?項目基本情況
在市場上所有移動應(yīng)用中,游戲類應(yīng)用規(guī)模處于領(lǐng)先。截至2018年12月月底,游戲類應(yīng)用數(shù)量約138萬款,數(shù)量規(guī)模排名第一。在游戲應(yīng)用中,經(jīng)常涉及利用圓或球的邊界進(jìn)行碰撞檢測問題,所以在“高等數(shù)學(xué)”課程綜合實踐中嘗試加入碰撞檢測問題的求解。
課程綜合實踐要求學(xué)生利用實踐期間講授的碰撞檢測知識,并結(jié)合移動應(yīng)用開發(fā)專業(yè)的課程配置,根據(jù)綜合實踐提供的相關(guān)資料,編寫二維平面碰撞檢測的代碼,并撰寫一份專題應(yīng)用報告,培養(yǎng)學(xué)生解決模型問題的思路和方法,形成“理論構(gòu)建—數(shù)學(xué)建檔—解決問題”的數(shù)學(xué)素質(zhì)教育的教學(xué)模式。一方面,使學(xué)生具備運用較為嚴(yán)謹(jǐn)、有邏輯層次、較為精練準(zhǔn)確的數(shù)學(xué)思維和語言分析問題、簡化問題以及描述問題的數(shù)學(xué)化能力,另一方面,提高學(xué)生處理一般實際問題的應(yīng)用能力與創(chuàng)新能力[2]。
3 ? ?項目流程
本項目由教師負(fù)責(zé)制定、編撰理論教學(xué)與應(yīng)用實踐內(nèi)容。對參與項目的學(xué)生講解碰撞檢測的原理和基本方法,進(jìn)行“高等數(shù)學(xué)”應(yīng)用報告寫作指導(dǎo),將參與項目的學(xué)生分成小組,推薦參考資料,布置學(xué)生按組進(jìn)行文獻(xiàn)查閱、概要設(shè)計、詳細(xì)設(shè)計、代碼編寫、測試等,全程跟蹤指導(dǎo)各小組完成撰寫實踐應(yīng)用報告。
碰撞游戲中的元素是否碰到一起,比如打飛機(jī)游戲,沒躲避炮彈就算飛機(jī)被擊中,移動應(yīng)用要能檢測出來,然后執(zhí)行相應(yīng)的處理程序。游戲里的碰撞檢測分為2D和3D兩種情況,在課程綜合實踐中,主要要求學(xué)生進(jìn)行2D情況下的碰撞檢測。
在移動應(yīng)用程序中,碰撞檢測主要有矩形判斷、圓形判斷、多矩形判斷3種方式。在對碰撞檢測的精度要求高的情況下,可以采用像素檢測算法達(dá)到精確檢測的目的,但采用像素檢測算法計算量大,對手機(jī)的性能要求高[3]。
如圖1所示,在矩形判斷方式中,可以把游戲中敵我雙方人物都當(dāng)作矩形,來檢測兩個矩形是否相交。圖1中把其中一個人物當(dāng)作中間的矩形,以手機(jī)屏幕左上角為坐標(biāo)原點O,以水平向右方向為x軸正方向,豎直向下方向為y軸正方向。此矩形的左上角與右下角的坐標(biāo)分別為(x1,y1)和(x2,y2),如果此時把另外一個人物也當(dāng)作矩形處理,設(shè)其左上角與右下角的坐標(biāo)分別為(x1',y1')和(x2',y2'),那么,此時另一人物處在圖中陰影部分的矩形所示位置時,兩矩形不相交,即兩人物不碰撞。圖1陰影部分的矩形所示位置包含以下幾種情況:
(1)陰影部分矩形全部在中間矩形左邊,即x2' (2)陰影部分矩形全部在中間矩形右邊,即x1'>x2。 (3)陰影部分矩形全部在中間矩形上邊,即y2 (4)陰影部分矩形全部在中間矩形下邊,即x1'>x2。 這時判斷兩個矩形是否相交,通過取反操作進(jìn)行,因為相交==?。ú幌嘟唬?,即: ?。▁2' 圓形判斷比較簡單,判斷兩個圓心距離d12是否大于兩個圓的半徑之和“r1+r2”即可。對多矩形判斷,需要封裝多個矩形來一一判斷是否有碰撞。 在給學(xué)生講解完碰撞檢測的原理之后,學(xué)生需要針對3種碰撞檢測方法生成相應(yīng)的數(shù)學(xué)模型,并寫出偽代碼。然后采用Java編程語言編寫簡單的Demo軟件。 4 ? ?教學(xué)反思 通過在移動應(yīng)用開發(fā)專業(yè)開展“高等數(shù)學(xué)”課程創(chuàng)新創(chuàng)業(yè)綜合實踐,可以加強(qiáng)培養(yǎng)學(xué)生以下3方面的實際應(yīng)用能力。 4.1 ?數(shù)學(xué)化能力 初步具備運用較為嚴(yán)謹(jǐn)且有邏輯層次的、較為精練準(zhǔn)確的數(shù)學(xué)思維和語言分析問題、簡化問題以及描述問題的能力。將專業(yè)知識及實際問題提煉成數(shù)學(xué)問題,結(jié)合相關(guān)的數(shù)學(xué)知識進(jìn)行消化、理解。 4.2 ?處理實際問題的能力 初步具備運用適當(dāng)?shù)臄?shù)學(xué)思想、方法和技巧建立數(shù)學(xué)模型來解決所遇到的一般實際問題的能力,初步具備查閱應(yīng)用文獻(xiàn)資料時對數(shù)學(xué)語言的辨識能力。一篇完整的應(yīng)用報告是學(xué)生小組集體的成果,是問題數(shù)學(xué)化再到最優(yōu)方案設(shè)計的過渡。 4.3 ?應(yīng)用創(chuàng)新能力 在后續(xù)的專業(yè)學(xué)習(xí)和實習(xí)中具備初步運用數(shù)學(xué)知識的創(chuàng)造能力,科學(xué)論文寫作時具備初步綜合運用數(shù)學(xué)語言的能力。 [參考文獻(xiàn)] [1]弗林特,科迪克.游戲中的數(shù)學(xué)與物理學(xué)[M].2版.周建娟,譯.北京:清華大學(xué)出版社,2014. [2]吳亞峰,蘇亞光,于復(fù)興.Android游戲開發(fā)大全[M].3版.北京:人民郵電出版社,2015. [3]喬納森.Android游戲編程入門經(jīng)典[M].宋松,王小飛,譯.北京:人民郵電出版社,2013.