移動應用軟件開發課程案例教學實踐論文

學識都 人氣:5.37K

針對“移動應用軟件開發”課程知識新、內容廣、工程性強的特點,課程教學中提出引入案例教學,以提高學生的學生興趣,激發其學習潛能,教師能講授更多知識點。案例教學實踐中,做到實驗準備充分、精選案例、有效引導、創新性訓練、合理評價。實踐表明,案例教學能提高學生工程素質和能力,全面提升人才培養質量。

移動應用軟件開發課程案例教學實踐論文

案例教學法作為一種基於互動、源於啟發式教學、與實踐緊密結合的教學方法,能充分調動學生積極性,最大限度地發揮學生學習潛能,它已在商學、管理學、法學和醫學教學中取得巨大成功[1]。近年,由於案例的“真實性”特性,能培養學生工程素質和能力,已被逐步引入工程教育中,本文討論它在“移動應用軟件開發”課程教學中的應用方式。

1 課程教學現狀

1.1 課程起源與課程定位

隨移動通信技術的發展,特別是3G、4G移動網絡的部署,移動網絡的傳輸能力大大增強,以移動通信網絡為平台開展的移動增值業務也越來越多。相應地,在智能手機制造、智能手機應用軟件開發、移動增值應用開發和移動WAP網站建設等企業從事軟件產品開發、軟件工程實施、系統測試和移動WAP網站製作等工作的人才成為了急需人才,據最新行業統計,缺口在100萬左右。基於人才需求,軟件工程、計算機應用和通信工程等本科專業也就逐步發展出移動技術應用專業方向,或者叫移動互聯網及應用技術專業方向。

“移動應用軟件開發”是移動技術應用的重要專業方向限選課,課程教學目標是培養移動終端應用產品開發能力和測試能力。課程主要教學內容是:移動智能終端硬件組成及結構、移動終端嵌入式操作系統、移動智能終端上應用的各種主流技術、移動應用軟件的設計開發流程和方法。預俢課程主要有:計算機基礎與C++程序設計、Java程序設計、嵌入式操作系統、數據庫原理、數據與網絡通信、移動通信原理、語音信號處理、數字圖像信號處理等。

1.2 課程特點

概括起來,“移動應用軟件開發”課程主要具有以下特點:

1.知識內容新。智能手機終端是伴隨新一代移動通信網絡出現的,因此它自身技術出現得比較晚,並且還處在不停的發展過程中。正因為如此,所以本課程直到2009年才在浙江大學等7所高校中首次開設[2],目前,也只有不到30所普通高校開設該門課程。課程本身還處在建設與完善過程中,其教學規律還未完全掌握。

2. 知識涉及面廣。一方面手機開發平台多樣化,主要有Sybian、iOS、 webOS 、Android、Linux、Windows phone7、Windows CE等,主流的有Google公司的 Android和蘋果公司的iOS等。其中,iOS相對來説性能穩定,但由於其開發方式的密閉性,使用受限;Android是基於Linux內核的操作系統,其顯著特性是開放性和服務免費[3],它是一個對第三方軟件完全開放的平台,開發者在為其開發應用程序時擁有更大的自由度,因而廣受歡迎並迅速佔領了市場,所以在教學過程中普遍選擇Android作為開發平台。另一方面,在學習移動應用開發技術過程中,需要多種知識,包括編程知識、通信知識、網絡知識、數據庫知識、信息安全知識等,特別強調的是,由於移動智能終端通常要處理多媒體業務,所以還應該掌握語音編碼、圖像/視頻編碼等信息處理知識。

3.工程真實性。一方面所開發的移動應用軟件都是和我們的日常生活密切相關的,體現出實用性,學生也能感受得到它的用處。這樣能提高學生學習積極性,激發其工程創新能力。另一方面開發的移動應用軟件都是一個個軟件工程,需要採用工程的觀念和方式來應對。

2 案例教學的必要性與可行性分析

從上述課程特點看,本課程知識新、內容廣、工程性強,採用傳統的講授和演示教學方法,難以使學生在短時間內接受紛繁複雜的知識;如果沒有工程實踐訓練,學生仍然不知道所學知識如何使用,不具備工程實踐能力。因此,這樣一門工程性極強的課程需要採用適應工程教育的教學方法,比如案例教學等可以和工程實踐緊密結合的新型教學方法。

工程類案例具有真實性、綜合性、完整性、啟發性和實踐性特點[4]。案例內容具有知識遷移性,通過案例教學過程,可以達到預定教學目標,使學生獲取知識並提高能力。案例教學的實施過程是一個交流、討論、分析問題的過程,不是滿堂灌的過程,容易為學生所接受,也能促使學生主動學習。“移動應用軟件開發”的每一個章節基本上是一個主題,都可以用一個案例來説明並實踐。案例教學在本課程中實施時,研討部分只提供一種實際工程的情境,用於討論軟件項目總體設計和難點問題的解決,實踐過程在實驗室完成或者在學生寢室完成(只需將開發平台安裝在自己電腦上),能延長實踐教學時間,提高課堂教學效率。總之,在本課程中實施案例教學是可行的。

3 案例教學實踐

3.1 案例準備

案例教學的前提是高質量的案例。編制的案例可以來自教師自己的.工程實踐、合作企業的實際項目,也可以是來自是相關書箱提供的案例,但要注意選擇,並進行適度修剪。所有案例級聯能覆蓋全課內容,形成知識構建。具體案例要有一定規模,不是停留在舉例説明的水平,可以給學生思索、發揮的空間;案例通常應有多個知識點,一方面能覆蓋整堂課的教學內容,也能涉及已學知識,起到鞏固知識的目的。比如多媒體開發一節教學內容,實用的手機多媒體程序很多,側重點不一樣,綜合教學內容後,設置的案例如表1所示。

表1 “多媒體開發”一節案例設計

案例名稱 音/視頻錄播機

程序功能描述 ① 實現音樂播放器、視頻播放器、錄音和攝像;

② 存儲音視頻文件;

③ 上載下載音視頻文件。

教學內容 多媒體開發

教學知識點 VideoView類、MediaRecorder類、MediaPlayer類

鞏固知識點 數據庫存儲與訪問、網絡通信、Activity和Intent

3.2 實驗條件

“移動應用軟件開發”是一門工程性課程,需要在授課前進行一定的實驗與實踐設備平台準備。主要設備內容有:開發用計算機、開發軟件、 Android實驗箱、外圍設備模塊(包括手機射頻模塊、WIFI模塊、藍牙模塊、攝像頭模塊、GPS模塊、RFID模塊、單片機模塊、DSP模塊、 FPGA模塊、ZigBee模塊等)。因為移動應用程序主要訓練的是移動客户端程序,為使開發的程序能得到驗證,教師要準備好相應的服務器程序。

3.3 教學過程

具體教學過程包括教師講解、課程討論、上機實踐和總結評價。仍然以多媒體開發一節的教學過程來説明。

1.教師講解

首先將案例項目列出,明確待開發程序的功能要求。再將智能手機中和本案例相關的通用程序進行演示,如錄音機、音樂、視頻、照相機等軟件,這些程序和案例程序雖相關但不一樣,放在這裏演示,可以引起學生學習興趣,也可以給學生提供直觀的感受。

接下來,在演示程序中,找到對應的知識點的關鍵程序進行基礎性的講解説明,例如實現音頻及視頻的錄製的調用方法步驟説明如下:⑴創建 record()方法,調用MediaRecorder的start()方法錄製,同時使錄製按鈕失效,使停止按鈕生效;⑵創建stop()方法,調用 MediaRecorder的sttop()方法停止錄製;⑶創建error()方法捕獲異常;⑷創建setPath()方法,設置錄音文件的存儲位置;⑸創建setProperty()方法,設置MediaRecorder的屬性,包括用 udioSource()方法來設置音頻源,用utputFormat()方法來設置輸出文件格式;⑹創建setup()方法,使錄製按鈕生效,使停止按鈕失效;⑺為錄製按鈕添加單擊事件,調用play()方法錄製;⑻為停止按鈕添加單擊事件,調用stop()方法停止錄製;⑼當實現的MediaRecorder類完成音頻的捕捉後,調用release()方法。

在工科教學中,對新知識的學習,講解是必要的。但在講解過程中,要由淺入深、循序漸進,注意知識點的融合與比較,做到理論聯繫實際[5]。

2.課程討論

案例教學的一個重要環節是課程討論,可以培養學生分析問題、解決問題的能力。在這一過程中,教師要注意引導,提示案例的“陷阱”所在,即技術難點和疑義問題。在本堂課中,主要疑義問題有:①同一界面,有多個子界面顯示,如何佈局?②播放視頻時使用VideoView類和MediaPlayer 類有何區別?③登陸服務器以哪種方式更合理?④當針對通話狀態及播放音頻時的錄音、播放視頻時的錄像,如何解決程序狀態?程序之間如何聯絡?⑤以流媒體形式播放存儲的網絡視頻時,如何保障視頻質量?

教師提出的討論問題也應該由易至難,先全局後局部。討論過程中,教師也不能放任自流,注意掌控討論方向。對舊知識點內容提示為主,對新知識點內容,可以再度講解、解釋。課堂討論時間是有限的,也不是必須解決所有問題,特別是一些需要學習新知識的問題,可以提出問題,給出解決問題的方向,列出參考書目,一些學有餘力的學生可以利用課後時間來進行深層次的學習。在本堂課中,比如Android並不支持所有格式的音視頻的編解碼,對於一些特殊格式的音視頻的編解碼需要去學習相關知識,並用C++開發相應的庫函數,再由Jave通過JNI機制調用。

3.實踐與評價

工程教育不能停留在思辨階段,最終需要通過實踐來獲得知識和能力。“移動應用軟件開發”是要開發應用程序的,一定要通過上機實踐來驗證自己的設計方案。簡單程序可以獨自承擔,綜合性的大型程序可以2-3人組成團隊開發。學生實踐過程中,教師只能給出指導性建議,而不是要求學生按標準性流程跟蹤完成,即所有的實踐要求是創新性完成。

實踐完成後,學生要提交總結性的實驗報告。雖然案例教學主張實施方案是無標準的,沒有統一答案,但教師還是可以根據學生在整個教學過程中的表現、完成程序效果、實驗報告質量給出一個等級性的綜合評價。

4 結語

在“移動應用開發”這門課程中採用案例教學的方式,是一次有益的嘗試。讓教師在有限的課堂教學時間裏講授更多的知識點,提高了教學效果;有效地解決了傳統教學中學生興趣低、參與性差,解決實際工程問題能力弱的問題,全面提升了人才培養質量,對移動技術應用專業方向“移動應用軟件開發”課程的教學和實踐提供了示範性方法。