胡麗
摘 要:“Android程序設(shè)計”課程是高等職業(yè)學(xué)校教學(xué)計劃中計算機(jī)相關(guān)專業(yè)一門重要的課程,文章通過讀、畫、仿、辨、寫、導(dǎo)、編、組、建、測等教學(xué)方法來實施課堂教學(xué),對這些教學(xué)方法進(jìn)行了淺顯的分析和探討,給出了具體的操作方法,以期能為同行提供一點點幫助。
關(guān)鍵詞:Android程序設(shè)計;學(xué)習(xí)能力;教學(xué)方法
1 課程簡介
“Android程序設(shè)計”課程是高等職業(yè)學(xué)校教學(xué)計劃中計算機(jī)相關(guān)專業(yè)一門重要的課程,是為學(xué)習(xí)移動手機(jī)開發(fā)的必要課程。具體內(nèi)容包括:Android環(huán)境的搭建,Android項目結(jié)構(gòu)分析,用戶界面設(shè)計,2D、3D圖形繪制,數(shù)據(jù)存儲和訪問,定位服務(wù)于地圖應(yīng)用,網(wǎng)絡(luò)編程,Android NDK開發(fā)及綜合案例。
從基礎(chǔ)開始學(xué)習(xí),循環(huán)漸進(jìn),精通Google Android開發(fā),熟練掌握3G移動應(yīng)用程序開發(fā),通過項目實踐,提升動手能力,將所學(xué)知識整合運(yùn)用到項目中。通過實訓(xùn)教學(xué),在崗位技能方面,經(jīng)過大量的上機(jī)練習(xí)、代碼閱讀、代碼改錯、規(guī)范化檢查,訓(xùn)練學(xué)生編寫程序的熟練度和規(guī)范性;在項目經(jīng)驗的積累方面,通過完成大量的項目案例和階段項目實戰(zhàn),增加對實際軟件項目開發(fā)的體驗;在職業(yè)素質(zhì)方面,通過項目組角色分配、技術(shù)研討等多種訓(xùn)練手段,培養(yǎng)學(xué)生具備良好的職業(yè)習(xí)慣。
2 教學(xué)方法
2.1 讀
朱熹曾經(jīng)說過:“讀書之法,在循序而漸進(jìn),熟讀而精思。”學(xué)習(xí)編程也是這樣,多看別人的,理解別人的思路和想法,理清程序運(yùn)行的過程,循序漸進(jìn),由淺入深。
具體操作方法:給學(xué)生一段代碼,閱讀這段代碼,思考可能的運(yùn)行結(jié)果。
例如: xmlns:tools=http://schemas.android.com/tools android:id=”@+id/activity_main” android:orientation=”vertical” android:layout_width=”match_parent” android:layout_height=”match_parent” tools:context=”com.hl.student.test.MainActivity”> android:id=”@+id/t1” android:layout_width=”match_parent” android:layout_height=”wrap_content” android:text=”本實例演示的是設(shè)置字體的顏色” android:textColor=”#FFFFFF” android:textSize=”20dp”> 通過這段代碼,學(xué)生思考在這個界面中整個布局模式,控件是水平分布還是垂直分布,布局的寬度和高度,TextView控件位置在哪里,id號是什么,寬度和高度,控件上顯示的內(nèi)容、文本顏色、文本大小等信息。當(dāng)然這個例子是最簡單的,稍微復(fù)雜些的例子就會有布局的嵌套,這時需要學(xué)生更加仔細(xì)認(rèn)真閱讀才行。 2.2 畫 視覺理解是教導(dǎo)如何正確判斷事物的重要方法,人的大多數(shù)思考過程都是隱蔽不可見的,我們只是在頭腦中想,卻很少將它們外化出來。而“圖解思考”指的是用畫圖的方式來直觀表示出我們思考的內(nèi)容,這有利于我們對所思考的問題的解答。 具體操作方法:仔細(xì)閱讀代碼后,程序結(jié)果用鉛筆在草稿紙上繪制或者使用繪圖軟件繪制,上傳或者選擇2名學(xué)生畫在黑板上。 安卓編程初期涉及大量的界面設(shè)計練習(xí),因此,這個階段需要為學(xué)生提供豐富的代碼進(jìn)行閱讀,在讀完全部程序后,將別人的程序結(jié)果根據(jù)自己的思考畫出來,讓自己的思考結(jié)果圖像化。這種方式比學(xué)生只是在大腦里想想要有效得多。如果學(xué)生只是將別人的代碼輸入,然后看看結(jié)果,這樣實踐很空泛,印象不深刻,理解也不深入[1]。 2.3 仿 魯?shù)婪颉な反{的理論使模仿的重要性成焦點話題:“有兩個神奇的詞匯:模仿和榜樣。”希臘哲學(xué)家亞里士多德認(rèn)為人類是最具有模仿力的生物。學(xué)習(xí)的過程就是要站在巨人的肩膀上,才能看得更遠(yuǎn)。程序設(shè)計也是如此,通過大量模仿優(yōu)秀的程序,形成自己的編程風(fēng)格和特點。 具體操作方法:完整輸入提供的代碼,通過運(yùn)行結(jié)果來驗證自己的思考結(jié)果是否正確。如果有誤,思考癥結(jié)所在,哪些屬性理解有錯?哪段代碼沒有讀懂?通過這種方法,可以讓學(xué)生對控件的屬性和代碼有直觀的了解,反復(fù)練習(xí)幾次,記憶更加深刻[2]。 2.4 辨 具體操作方法:給一張效果圖(見圖1),讓同學(xué)們思考會用到的元素及其屬性設(shè)置,將思考結(jié)果填寫在表格中以便后面比較。 通過效果圖,學(xué)生需要思考布局模式、布局高度寬度、背景、排列方向、控件大小、文字大小、控件背景、控件寬度、控件高度、控件對齊方式、文字對齊方式等。這是界面設(shè)計中最簡單的實例,通過由淺入深的練習(xí),讓學(xué)生看到別人的APP時能夠了解別人用到了哪些控件,布局排版等。這個環(huán)節(jié)老師可以提供學(xué)生喜歡的APP截圖,比如游戲界面、QQ界面、微信界面、音樂播放器界面等,讓同學(xué)們分析,能夠起到不錯的效果[3]。 2.5 寫 具體操作方法:自己編程實現(xiàn)辨中的效果圖,驗證自己的想法,如果有誤,思考錯誤之處,修改,直到和效果完全一致。 在這個過程中,每個界面設(shè)計可能有很多條實現(xiàn)途徑,要鼓勵學(xué)生多探索多實踐。
2.6 導(dǎo)
具體操作方法:學(xué)習(xí)一段時間后,讓同學(xué)們使用思維導(dǎo)圖整理知識點,比如各種控件、布局方式、數(shù)據(jù)傳遞方式、頁面跳轉(zhuǎn)方式等,每個控件的屬性和方法,每個屬性的參數(shù)值等。通過這種方式讓學(xué)生對所學(xué)知識有個整體框架,將所學(xué)相互關(guān)聯(lián),根據(jù)麥肯錫的金字塔理論,對所學(xué)知識進(jìn)行歸納整理,建立學(xué)生自己的理論體系,更有利于學(xué)生思維能力的發(fā)展和提高。
2.7 編
具體操作方法:編制小冊子,內(nèi)容包括兩大部分:單詞和程序。安卓編程環(huán)境全英文,學(xué)生英文水平較低,開始時會有畏難情緒,可以讓學(xué)生把遇到的單詞下來,并翻譯好,形成一個單詞詞典。對于程序,在安卓編程中有很多固定的編程順序和模式,將這些編制成冊,隨時翻看,學(xué)生記憶更快。這兩項工作可以以小組形式完成,最好的方法是編制一個APP,做成字典的形式,學(xué)生學(xué)以致用,會更加有興趣。期末結(jié)束時可以打印出來,每位同學(xué)一份,對以后工作也有很好的幫助。
2.8 組
具體方法:將層次相似的同學(xué)組成一組,分配不同難度的任務(wù),組長負(fù)責(zé)組內(nèi)每位同學(xué)都要完成自己的任務(wù)。組內(nèi)成員合作制作幻燈片,結(jié)果展示講解時隨機(jī)抽取組內(nèi)成員,獲得的成績?yōu)槊课怀蓡T的成績,這樣每位同學(xué)都不能偷懶存僥幸心理,促進(jìn)學(xué)生多層次發(fā)展。人像樹木一樣,要使他們盡量長上去,不能勉強(qiáng)都長得一樣高,應(yīng)當(dāng)是:立腳點上求平等,于出頭處謀自由[4]。
2.9 建
具體方法:使用問卷星建立一個題庫,題型可以是選擇題、判斷題等,將平常練習(xí)的題目添加在題庫中。題目內(nèi)容可以是單詞翻譯、程序解讀等。
2.10 測
具體方法:使用問卷星的題庫測試學(xué)生對基礎(chǔ)知識的掌握情況。
通過測試,及時掌握學(xué)生的學(xué)習(xí)情況,調(diào)整上課內(nèi)容和學(xué)習(xí)進(jìn)度。
3 結(jié)語
學(xué)習(xí)是一個內(nèi)化的過程,教學(xué)的目的是培養(yǎng)學(xué)生自己學(xué)習(xí),自己研究,用自己的頭腦來想,用自己的眼睛看,用自己的手來做。安卓編程內(nèi)容豐富,教材知識覆蓋面廣,老師在教學(xué)過程中需要根據(jù)學(xué)生的學(xué)習(xí)情況調(diào)整學(xué)習(xí)進(jìn)度和學(xué)習(xí)范圍。在教學(xué)過程中盡量讓學(xué)生自己參與,學(xué)的知識不要多而要精,學(xué)過的都能掌握,而且能學(xué)以致用。教師只需要講解重點難點,具體的突破采用大量例子來完成,讓學(xué)生自己實踐、思考來實現(xiàn)知識的內(nèi)化。馬卡連柯說,培養(yǎng)人就是培養(yǎng)他對前途的希望。這門課是新興課程,未來很有前途,要不斷給學(xué)生鼓勵,讓他們都能投身到學(xué)習(xí)安卓編程的熱潮中,掌握一門賴以生存的技能,對自己的未來充滿信心。
[參考文獻(xiàn)]
[1]郭霖.第一行代碼Android[M].2版.北京:人民郵電出版社,2014.
[2]楚無咎.Android編程經(jīng)典200例[M].北京:電子工業(yè)出版社,2013.
[3]黃宇健,劉宏韜.Android項目開發(fā)范例大全[M].北京:中國鐵道出版社,2012.
[4]李華明.Android游戲編程之從零開始[M].北京:清華大學(xué)出版社,2011.