肖逸飛,吉家成,黃飛虎
(電子科技大學(xué),成都611731)
移動開發(fā)類實(shí)驗(yàn)教學(xué)探討
肖逸飛,吉家成,黃飛虎
(電子科技大學(xué),成都611731)
隨著移動互聯(lián)網(wǎng)、互聯(lián)網(wǎng)+的飛速發(fā)展,計算機(jī)技術(shù)人才的市場需求與高校學(xué)生的培養(yǎng)方式發(fā)生了重大偏移,如何將學(xué)生的培養(yǎng)融合人才市場的需求成為高校亟需解決的問題。其中,移動開發(fā)類實(shí)驗(yàn)課程符合當(dāng)前市場需求,但在國內(nèi)鮮有涉獵,學(xué)生普遍缺乏移動開發(fā)理論及認(rèn)知。鑒于此,提出了一門全新的實(shí)驗(yàn)課程——基于Android的嵌入式開發(fā)綜合實(shí)驗(yàn),提出“實(shí)驗(yàn)三步走”的教學(xué)理念,通過講教結(jié)合、軟硬結(jié)合的教學(xué)方式提升學(xué)生對移動開發(fā)的興趣與水平。通過實(shí)踐證明,該課程對學(xué)生掌握移動開發(fā)概念、提高移動開發(fā)水平,起到積極的作用。
移動開發(fā);實(shí)驗(yàn)課程;教學(xué)改革;Android
隨著移動互聯(lián)網(wǎng)[1]、互聯(lián)網(wǎng)+[2]的飛速發(fā)展,計算機(jī)技術(shù)人才的市場需求與高校學(xué)生的培養(yǎng)方式發(fā)生了重大偏移,如何將學(xué)生培養(yǎng)成為具有綜合素質(zhì)和實(shí)踐能力的創(chuàng)新型人才,以適應(yīng)當(dāng)前社會的發(fā)展,是高校亟需解決的問題,也是高校當(dāng)前不斷探索的主要教學(xué)改革課題[3]。
自2007年推出移動智能終端以來,移動應(yīng)用規(guī)模盛況空前,2013年底,蘋果App Store及谷歌Google Play應(yīng)用下載量均達(dá)到500億次,應(yīng)用規(guī)模均超過100萬個。同時,根據(jù)國際電信聯(lián)盟的數(shù)據(jù)顯示,截止到2013年9月,全球移動互聯(lián)網(wǎng)用戶數(shù)接近全球人口數(shù),達(dá)到了71億。據(jù)CIRP報道,截至2017年初,谷歌的Android和蘋果iOS兩個操作系統(tǒng)總共占據(jù)了美國移動市場98%的份額,剩下少得可憐的2%則由Windows手機(jī)和其他一些平臺所瓜分[4],如圖1所示。僅7年時間,ICT核心的技術(shù)平臺體系完成從PC(Wintel)到智能手機(jī)(Android&iOS+ARM)的轉(zhuǎn)移,軟件架構(gòu)模式已由傳統(tǒng)互聯(lián)網(wǎng)下的C/S、B/S模式向移動互聯(lián)網(wǎng)下的Web+App模式傾斜。
圖1 美國移動市場操作系統(tǒng)份額
為適應(yīng)主流軟件開發(fā)技術(shù)向移動互聯(lián)網(wǎng)傾斜這一趨勢,計算機(jī)科學(xué)與技術(shù)專業(yè)的嵌入式開發(fā)課程改革已經(jīng)在世界范圍內(nèi)展開。全球知名高校斯坦福大學(xué)、麻省理工大學(xué)、卡內(nèi)基梅隆大學(xué)早在2007年左右已經(jīng)對計算機(jī)類課程進(jìn)行了改革,為學(xué)生開設(shè)諸如“開發(fā)iPhone與iPad應(yīng)用”、“iPhone應(yīng)用開發(fā)”等移動應(yīng)用課程[5]。與此同時,國內(nèi)諸多高校也紛紛加入改革隊(duì)伍,2010年以來,Google正式啟動Google校企共建Android類實(shí)用課程項(xiàng)目,與北京大學(xué)、西安交通大學(xué)、廈門大學(xué)等國內(nèi)知名高校建立校企合作關(guān)系[6]。然而,雖然國內(nèi)高校對移動開發(fā)課程改革響應(yīng)迅速,但總體上仍然缺乏從全方位專業(yè)建設(shè)角度進(jìn)行的調(diào)整,難以為高校學(xué)生建立全面的移動應(yīng)用知識框架。因此,面對國內(nèi)移動互聯(lián)網(wǎng)、互聯(lián)網(wǎng)+的浪潮,國內(nèi)計算機(jī)科學(xué)與技術(shù)專業(yè)課程改革依然迫在眉睫。
國內(nèi)計算機(jī)實(shí)驗(yàn)類課程普遍屬于基礎(chǔ)類、通識類實(shí)驗(yàn)課,所用計算機(jī)相關(guān)技術(shù)過于老舊,缺乏與時俱進(jìn)的新技術(shù)及新思想。例如,計算機(jī)圖形學(xué)普遍采用MFC進(jìn)行圖形化軟件繪制,MFC是微軟于1992年發(fā)布的一個類庫,用于面向Windows的軟件開發(fā)。雖然MFC有面向?qū)ο蟮乃枷?,并且源代碼開源。但MFC的一些封裝過程過于復(fù)雜,對于大二、大三學(xué)生來講,很難在短時間內(nèi)快速掌握MFC的應(yīng)用程序框架,以及在調(diào)試中定位問題的位置。這對于學(xué)生提高編程積極性,增強(qiáng)學(xué)生的自信心是有負(fù)面影響的。
按照電子科技大學(xué)計算機(jī)學(xué)院的本科培養(yǎng)計劃,該課程的先修課程《Java程序設(shè)計》屬于選修課,并且Java語言只是入門,缺乏實(shí)際的開發(fā)經(jīng)驗(yàn),但在本課程中,除了少量UI及配置相關(guān)代碼采用非Java形式,其他代碼均采用Java,可以說,Java是學(xué)習(xí)本門課程的核心。
Android開發(fā)在2014年以前主要采用Eclipse+插件,或者ADT集成開發(fā)環(huán)境進(jìn)行開發(fā),然而隨著Jet-Brains公司的強(qiáng)勢崛起,基于JetBrains的IDEA,Google于2014年發(fā)布了Android Studio,由于其運(yùn)行速度更快、自動補(bǔ)全更智能、依賴管理更方便等優(yōu)勢,迅速占領(lǐng)市場,成為當(dāng)前最流行的集成開發(fā)環(huán)境[7]。
然而,學(xué)生對于Android Studio一無所知,沒有任何一門相關(guān)的先行課程使用Android Studio作為開發(fā)環(huán)境,與其稍微有關(guān)的開發(fā)環(huán)境是學(xué)習(xí)Java語言所采用的Eclipse。但是,兩者在視圖和使用上差距較大,需要花較長時間學(xué)習(xí),才能初步掌握其使用方法。因此,要求學(xué)生在很短的時間內(nèi)掌握較為困難。
眾所周知,高校的機(jī)房普遍配置較差、一般與當(dāng)前主流的計算機(jī)配置差5-8年,由于Android基于Java,采用Java虛擬機(jī)運(yùn)行,開發(fā)過程中對系統(tǒng)資源消耗較大,尤其是CPU和內(nèi)存開銷。若在開發(fā)過程中,開啟手機(jī)模擬器,則CPU和內(nèi)存基本屬于跑滿狀態(tài),這對學(xué)生開發(fā)的效率及學(xué)習(xí)的心態(tài)影響較大。
眾所周知,高校普遍存在學(xué)生抄襲現(xiàn)象,在實(shí)驗(yàn)教學(xué)方面也不例外。高校普遍采用的實(shí)驗(yàn)教學(xué)考核方式是實(shí)驗(yàn)報告,然而實(shí)驗(yàn)報告格式雷同,差異性小,不容易捕捉到抄襲的真?zhèn)危又畬?shí)驗(yàn)報告的評判屬于定性判斷,學(xué)生的真實(shí)表現(xiàn)不容易從成績中體現(xiàn)。
基于當(dāng)前國內(nèi)移動應(yīng)用教學(xué)改革現(xiàn)狀,考慮到以上教學(xué)存在的問題,本文基于Android平臺開設(shè)了一門嵌入式課程——《基于Android的嵌入式開發(fā)綜合實(shí)驗(yàn)》,課程采用講教結(jié)合、由淺入深的教學(xué)方式,實(shí)現(xiàn)“實(shí)驗(yàn)三步走”,設(shè)計了3個小實(shí)驗(yàn):1)Android入門2)簡易計算器3)2048游戲開發(fā)。
Android開發(fā)實(shí)驗(yàn)課在國內(nèi)高校屬于初探階段,由于技術(shù)較為新穎、相關(guān)理論課未及時跟進(jìn),因此該類實(shí)驗(yàn)課程極少,在電子科技大學(xué)計算機(jī)學(xué)院未有涉及。本課程的教學(xué)目標(biāo)是為學(xué)生開發(fā)移動應(yīng)用提供理論與實(shí)踐相結(jié)合的基礎(chǔ)平臺,由于學(xué)生缺乏相關(guān)理論知識、對開發(fā)環(huán)境較為陌生,因此,本課程采取“實(shí)驗(yàn)三步走”的設(shè)計思路(如圖2):第一步,了解開發(fā)環(huán)境,通過“手把手教學(xué)”一步步現(xiàn)場演示及講解,指導(dǎo)學(xué)生如何進(jìn)行實(shí)際操作、如何配置及使用Android Studio開發(fā)環(huán)境,了解Android理論知識架構(gòu)及基本控件的使用方法,學(xué)生通過投影儀,可以清晰地看到老師的操作方法及操作技巧,結(jié)合幻燈片的內(nèi)容,可以更加緊密的將理論與實(shí)踐結(jié)合起來。第二步,掌握開發(fā)流程。雖說開發(fā)的難度及規(guī)模大小不一,但任何編程語言的開發(fā)都遵循一套開發(fā)流程,本課程通過開發(fā)小小的“簡易計算器”,使學(xué)生在很短的時間內(nèi)了解Android平臺開發(fā)的基本流程,對于學(xué)生樹立開發(fā)的自信心也是大有裨益。很多學(xué)生對于開發(fā)有所抵觸,由于曾經(jīng)做的項(xiàng)目難度偏大、程序較為復(fù)雜,對程序出現(xiàn)bug更是容易驚慌失措,本課程通過手把手教學(xué),從簡單的小項(xiàng)目里帶領(lǐng)學(xué)生解決一些程序錯誤,樹立學(xué)生的自信。第三步,提升開發(fā)難度,本課程的最后一個小實(shí)驗(yàn)是開發(fā)Android版的2048游戲[8],這款游戲曾經(jīng)在網(wǎng)絡(luò)上風(fēng)靡一時,被學(xué)生群體所熟知,加之在游戲領(lǐng)域其開發(fā)難度較低,玩法也簡單有趣,因此,較為適合作為一個實(shí)驗(yàn)項(xiàng)目。通過2048游戲的開發(fā),學(xué)生不僅掌握了Android游戲開發(fā)的基本概念,也對Android開發(fā)及相關(guān)技術(shù)有了更深層次的理解。通過“實(shí)驗(yàn)三步走”,學(xué)生逐步掌握了基本的Android開發(fā)技巧,豐富了自己對移動應(yīng)用背后原理的探索。實(shí)踐證明,該方案的效果良好,得到了學(xué)生們的肯定與好評。
圖2 實(shí)驗(yàn)三步走流程圖
本課程屬于嵌入式實(shí)驗(yàn)課程,軟件+硬件是本課程的一大特色。本課程系統(tǒng)開發(fā)環(huán)境如下:
(1)操作系統(tǒng):Windows7
(2)代碼編輯 IDE:Android Studio 2.3
(3)代碼調(diào)試:Android 4.0+手機(jī)
由前文可知,移動互聯(lián)網(wǎng)目前有70%左右的手機(jī)是Android系統(tǒng),在學(xué)生群體中也是如此。因此,本課程不需要額外配置硬件,只需學(xué)生自己攜帶個人手機(jī)及數(shù)據(jù)線即可。這樣不僅節(jié)約了高校硬件資源的成本,學(xué)生不使用Android仿真模擬器調(diào)試代碼,也降低了開發(fā)過程中對計算機(jī)CPU、內(nèi)存等資源的消耗,同時應(yīng)用安裝在學(xué)生手機(jī)中,方便學(xué)生可以隨時瀏覽自己的勞動成果,這樣可以激發(fā)學(xué)生的開發(fā)興趣、提升學(xué)生的成就感。
相較于傳統(tǒng)的嵌入式開發(fā)實(shí)驗(yàn),如計算機(jī)組成原理、數(shù)字邏輯實(shí)驗(yàn)等,其課程難度較大[9],學(xué)生雖掌握其結(jié)果,但疏于其過程及原理。本課程雖同屬于軟件+硬件,但在硬件方面的調(diào)試可以完全忽略,只是需要打開手機(jī)授權(quán)即可。這樣學(xué)生可以集中注意力到軟件的實(shí)現(xiàn)上,對于過程及原理的掌握是非常有幫助的。
傳統(tǒng)的實(shí)驗(yàn)課程中,老師不一定會帶著學(xué)生一步一步操作,雖說是依葫蘆畫瓢,但在基礎(chǔ)較差、概念不清的學(xué)生眼中,手把手教學(xué)可以讓他們對理論如何應(yīng)用于實(shí)際有更清晰的認(rèn)識,課程同時配合教學(xué)講解,學(xué)生可以快速理解,并達(dá)到推左及右、舉一反三的效果。本課程采用講教結(jié)合的方式,一邊講解,一邊帶著學(xué)生手把手教學(xué),這樣的方式不僅可以幫助學(xué)生在短時間內(nèi)掌握理論知識的一套實(shí)踐技巧,也可以促進(jìn)學(xué)生模仿老師,養(yǎng)成良好的代碼風(fēng)格及習(xí)慣,同時,對于當(dāng)下提倡的“實(shí)驗(yàn)教學(xué)+”的教學(xué)培養(yǎng)模式[11],引導(dǎo)學(xué)生在實(shí)驗(yàn)課程中自主創(chuàng)新,提升學(xué)生的創(chuàng)新能力和創(chuàng)新意識,起到了一定的鋪墊作用。
如前所述,實(shí)驗(yàn)報告存在大量抄襲現(xiàn)象,復(fù)制粘貼的學(xué)生大有人在,這種考核方式無法保證學(xué)生的成績與實(shí)際的水平相當(dāng)[10]。鑒于此,本課程在最后一節(jié)實(shí)驗(yàn)課,增加項(xiàng)目驗(yàn)收的環(huán)節(jié),讓學(xué)生打開手機(jī)應(yīng)用,現(xiàn)場講解應(yīng)用的實(shí)現(xiàn)流程及采用的Android技術(shù),一定程度上,避免了抄襲現(xiàn)象,促使學(xué)生真正學(xué)有所得。本課程考核標(biāo)準(zhǔn)如表1所示:
表1 課程考核評價標(biāo)準(zhǔn)
通過開設(shè)新實(shí)驗(yàn)課程,本文對移動開發(fā)類實(shí)驗(yàn)如何實(shí)施進(jìn)行了簡要介紹,提出了“實(shí)驗(yàn)三步走”的實(shí)驗(yàn)教學(xué)理念,通過手把手教學(xué)、軟硬結(jié)合的實(shí)驗(yàn)方式,使學(xué)生了解移動開發(fā)的概念及背后的原理,掌握基本的Android開發(fā)技巧,實(shí)驗(yàn)報告中的學(xué)生反饋信息也印證了這一點(diǎn)。實(shí)驗(yàn)教學(xué)是對理論知識運(yùn)用到實(shí)際的平臺,同時也應(yīng)是學(xué)生在入職之前的培訓(xùn)場所,如何做好實(shí)驗(yàn)課程,使學(xué)生在接觸社會之前具備相關(guān)的經(jīng)驗(yàn)和技巧是高校所關(guān)注的。隨著移動互聯(lián)網(wǎng)的快速發(fā)展,企業(yè)對相關(guān)的移動應(yīng)用人才也會趨之若鶩,合理利用實(shí)驗(yàn)教學(xué),將新技術(shù)與新思想運(yùn)用到學(xué)生的教學(xué)中去,無疑對學(xué)生日后的發(fā)展會有所幫助。
[1]向文杰.移動互聯(lián)網(wǎng)發(fā)展的回顧與展望[J].電信技術(shù),2009(1):66-69.
[2]CIRP.https://www.cirpllc.com/.
[3]楊棟梁.移動互聯(lián)網(wǎng)發(fā)展趨勢的研究[J].電腦知識與技術(shù),2012(2X):1039-1042.
[4]王俊生,王春霞,耿大勇,等.電工電子實(shí)習(xí)教學(xué)改革與實(shí)踐[J].實(shí)驗(yàn)科學(xué)與技術(shù),2017,15(2):102-105.
[5]楊庚宇,邢紅宇,秦柱秋.美國,加拿大教育技術(shù)與遠(yuǎn)程教育考察報告[J].教育信息技術(shù),2005(8):28-30.
[6]Elite,http://www.google.cn/university/curriculum/elite.html
[7]劉萬輝.微課開發(fā)與制作技術(shù)[J].2015.
[8]UDACITY.https://cn.udacity.com/course/.
[9]米源,吉家成,吳淮.《計算機(jī)組成原理》實(shí)驗(yàn)教學(xué)探討[J].實(shí)驗(yàn)科學(xué)與技術(shù),2013,11(6):278-280.
[10]尹立蘋,劉雁紅,韓聰.高校實(shí)驗(yàn)教學(xué)考核模式的研究與探索[J].實(shí)驗(yàn)科學(xué)與技術(shù),2009,7(5):73-75.
[11]俞麗珍,寧春花,左曉兵,等.設(shè)計性,研究性實(shí)驗(yàn)教學(xué)探索與實(shí)踐[J].實(shí)驗(yàn)科學(xué)與技術(shù),2017,15(1):117-119.
肖逸飛(1989-),男,四川成都人,碩士研究生,助理實(shí)驗(yàn)師,研究方向?yàn)樵朴嬎阏{(diào)度、網(wǎng)絡(luò)安全態(tài)勢
Exploration of Experiment Teaching on Mobile Development
XIAO Yi-fei,JIJia-cheng,HUANG Fei-hu
(University ofElectronic Science and Technology,Chengdu 611731)
With the rapid developmentofmobile Internetand Internet Plus,the marketdemand ofcomputer technology talents has a greatdeviation from the training mode ofcollege students.It's importantto consider the needs oftalenttraining marketinto studenttraining.Among which,the mobile developmentof experimentalcourses meets the current market demand,but there is almost no such course in China,students generally lack oftheoreticalknowledge and related concepts.Therefore,presents a new experimentalcourse,Embedded Comprehensive Experiment Based on Android Platform,puts forward the experimental three-step teaching philosophy,with the combination of teaching and training,uses the teaching method ofsoftware-hardware combination to improve the mobile development interestand level of students.The practice proves that the course can help students to master the concept of mobile development,and improve the level of mobile development.
Mobile Development;ExperimentalCourse;Teaching Reform;Android
1007-1423(2017)30-0081-04
10.3969/j.issn.1007-1423.2017.30.018
2017-10-12
修稿日期:2017-10-22