鄭世玨,陶立秋,魯 岳,楊 坤,陳相如
(華中師范大學 計算機學院,湖北 武漢 430079)
一種全新的學習方式——移動學習 (Mobile Learning),作為一種潛在的新型學習方式,可以滿足學習者在任何時間、任何地點獲得任何知識的學習愿望。移動學習需要以微型的媒體來呈現(xiàn)微型的內(nèi)容,它是指在終身學習的思想指導(dǎo)下,利用現(xiàn)代通信終端,如手機、PDA等設(shè)備進行遠程學習。
隨著智能手機用戶總數(shù)的大幅提升,手機已成為人們學習的一種工具。iOS作為一款成功的手機系統(tǒng)[1],具有極為人性化的頁面和極為強大性能,因此深受用戶的喜愛。由于iOS采用封閉源碼,因此開發(fā)過程較開源系統(tǒng)更為復(fù)雜。在這樣的背景下,本文提出的微型課件在iOS平臺上的設(shè)計與實現(xiàn),采用Xcode開發(fā)平臺和object-c開發(fā)語言,目的在于滿足學習者在iOS平臺上移動學習的需要,同時通過C/S模式,解決手機、PDA等設(shè)備無法滿足傳統(tǒng)較大容量課件的存儲需求的問題。
圖1 iOS系統(tǒng)結(jié)構(gòu)
iOS是蘋果公司iPhone、iPod Touch和iPad設(shè)備的核心操作系統(tǒng)。與Mac OS X操作系統(tǒng)一樣,iOS也是以Darwin2為基礎(chǔ),屬于類Unix的商業(yè)操作系統(tǒng)。
iOS系統(tǒng)結(jié)構(gòu)分為4層,如圖1所示。
(1)Cocoa Touch層: 是Objective-C的API,其中最核心的部分是UIKit.Framework。除UIKit之外,Cocoa Touch包含創(chuàng)建iOS應(yīng)用程序所需的所有框架。
(2)Media層:提供了圖片、音樂、影片等多媒體功能。圖像分為2D圖像和3D圖像,前者由Quartz2D支持,后者由OpenglES支持。
(3)Core Services層:為所有的應(yīng)用程序提供基礎(chǔ)系統(tǒng)服務(wù),它包含了Foundation.Framework和Core Foundation.Framework,它在Core OS層基礎(chǔ)上提供了更為豐富的功能,如:處理字串、排列、組合、日歷等。
(4)Core OS層:是在FreeBSD4和Mach5基礎(chǔ)上所改寫的Darwin,是開源、符合POSIX標準的一個Unix核心。
目前常用的iOS開發(fā)工具和開發(fā)包有:Xcode、iOS模 擬 器 、頁 面 創(chuàng) 建 器 (Interface Builder)、微 技 (Widget)等。本設(shè)計采用的開發(fā)工具為Xcode,開發(fā)包為Interface Builder和Widget。
(1)Xcode
Xcode是蘋果公司向開發(fā)人員提供的集成開發(fā)環(huán)境(非開源),用于開發(fā)Mac OS X和iOS的應(yīng)用程序,運行于蘋果公司的Mac操作系統(tǒng)下。Xcode貫穿整個開發(fā)應(yīng)用過程,同時,Xcode為整個過程提供所需的各種工具。
(2)Interface Builder
Interface Builder以所見即所得方式組裝用戶界面。通過Interface Builder可以組裝出應(yīng)用程序的用戶界面。當用戶界面達到要求后,將其保存為.nib格式。
(3)Widget
在互聯(lián)網(wǎng)領(lǐng)域,Widget是一種基于Web技術(shù)的小應(yīng)用,采用HTML/XHTML、CSS、JavaScript等傳統(tǒng)的開發(fā)技術(shù)[2]。將Widget技術(shù)搬到手機上,從而誕生了移動Widget(Mobile Widget)。移動Widget的主要特點有:一次開發(fā)、跨平臺運行;在有限的手機屏幕范圍內(nèi),用戶可以對界面進行個性化定制。
微型課件的開發(fā)主要基于微型學習理論。其設(shè)計與實現(xiàn)主要基于iOS平臺,同時采用了C/S架構(gòu)模式。
客戶端用于接收用戶請求和顯示返回結(jié)果。學習者通過iOS客戶端訪問移動學習資源的入口,調(diào)用封裝好的應(yīng)用程序接口來使用客戶端的各項功能。客戶端主要包括界面呈現(xiàn)、多媒體處理和數(shù)據(jù)通信等模塊。
本平臺的服務(wù)器端采用的是開源TOMCAT。TOMCAT處理客戶端的各種Http請求,并把請求的信息發(fā)送給Servlet,Servlet根據(jù)請求信息進行處理,并通過數(shù)據(jù)庫驅(qū)動JDBC,訪問MySQL數(shù)據(jù)庫。Servlet把訪問數(shù)據(jù)庫得到的數(shù)據(jù)和最后處理好的結(jié)果封裝到相應(yīng)對象中,發(fā)送給TOMCAT,TOMCAT把得到的結(jié)果回傳給客戶端。整個架構(gòu)如圖2所示。
圖2 客戶端和服務(wù)器端架構(gòu)
MySQL是完全網(wǎng)絡(luò)化的跨平臺關(guān)系型數(shù)據(jù)庫系統(tǒng),具有功能強、使用簡便、管理方便、運行速度快、安全可靠性強等優(yōu)點[3],因此本平臺采用了該數(shù)據(jù)庫系統(tǒng)。
本著冗余小和擴展性強的原則,設(shè)計了如下幾張表:tb_book、tb_chapter、tb_mchip、tb_problem和tb_video。
本數(shù)據(jù)庫在充分考慮參照完整性的前提下,通過各表之間的關(guān)系將多個表結(jié)合在一起。根據(jù)各個關(guān)系之間的聯(lián)系,設(shè)計出的該數(shù)據(jù)庫系統(tǒng)實現(xiàn)了數(shù)據(jù)冗余小且易于功能的擴展。
溫伯格把微內(nèi)容定義為“小組快、松散連接、一直處于動態(tài)重組中的信息單元”[4]?;谶@些特征的限定,微型課件的內(nèi)容可以是小文本、圖片圖像、視頻小片段或小動畫等。本文對微型課件內(nèi)容的開發(fā)以小文本、小圖片、微視頻為主。
2.3.1 文本模式
移動學習是一種非穩(wěn)定的學習方式,隨時可能因外界的環(huán)境變換,使學習處于一種分散、只能接受小容量知識的狀態(tài)。而文本的展示優(yōu)點在于簡潔、說明性強,所以本文以文本的方式將學習的知識點微型模塊化,一個模塊對應(yīng)一個章節(jié)的微型知識點,以此將 《多媒體技術(shù)與應(yīng)用教程》的知識點挖掘出來,分解成很多微小的適合于零碎時間學習的知識點。展示圖如圖3所示。
文本模塊的部分代碼如下:
圖3 文本展示
2.3.2 圖片模式
圖片模式下展示知識點,具有具體、直觀、形象、生動的特點,而且可以實現(xiàn)連貫性。因此針對《多媒體技術(shù)與應(yīng)用教程》中軟件工具的使用操作,以微型為主題,采用范圍確定、內(nèi)容連貫的學習組織方式,設(shè)計并實現(xiàn)了圖片學習模式。以清晰易懂為特點,圖片模式的學習將更受歡迎。展示圖如圖4所示。
圖片模塊的部分代碼如下:
圖4 圖片展示
2.3.3 視頻模式
將普通長視頻分割成若干個微視頻,每個微視頻中以突出一至兩個中心知識點的形式,不僅緩解了學習者視覺與聽覺疲勞,同時也提高了學習效率。圖5(a)所示為以微知識點為主的教師課堂授課視頻在智能手機中的效果。
播放界面 (見圖5(b))下方有一個提問欄,學習者可以隨時提問,服務(wù)器根據(jù)數(shù)據(jù)庫中的數(shù)據(jù)匹配來給予答復(fù),如果問題庫中沒有相應(yīng)的答案,服務(wù)器會記錄下該問題并提交給教師,教師解答問題并更新數(shù)據(jù)庫。這樣逐步建立起一個針對本書的答疑庫。
視頻模塊的部分代碼如下:
圖5 視頻展示
表1 測試結(jié)果
運行結(jié)果測試如表1所示。
系統(tǒng)正確實現(xiàn)了各個模塊之間的通信功能和通過數(shù)據(jù)庫管理基礎(chǔ)數(shù)據(jù)的功能,同時實現(xiàn)了數(shù)據(jù)內(nèi)容的多樣化和中英文界面。
本文在iOS平臺上完成了通過智能手機對微型課件的展示,實現(xiàn)了客戶端、服務(wù)器、數(shù)據(jù)庫之間的通信調(diào)用。但是,整個系統(tǒng)仍然存在一些不足:可靠性控制不夠嚴密,很多控制是通過頁面控制實現(xiàn)的,如果頁面控制失效,一旦向數(shù)據(jù)庫插入數(shù)據(jù),將引發(fā)錯誤,這是需要進一步改進的地方。
iOS開發(fā)在國內(nèi)已經(jīng)開始流行,其越來越廣泛的應(yīng)用勢必使iOS開發(fā)成為熱點。在今后的學習和研究中,將進一步完成和優(yōu)化本設(shè)計。
[1]KWAK D H,RAMAMURTHY K.iOS resources,electronic cooperation and performance:a conceptual model[C].The 44th Hawaii International Conference on System Science,Hawaii,2011:1-10.
[2]潘標.移動Widget引擎在iOS平臺上的研究與實現(xiàn)[D].成都:電子科技大學,2012.
[3]李會賢.基于MYSQL/LINUX的LAMOST數(shù)據(jù)庫設(shè)計與實現(xiàn)[J].天文研究與技術(shù),2006,3(1).56-63.
[4]張浩.微內(nèi)容環(huán)境中的學習者體驗設(shè)計初探[J].遠程教育雜志,2009(6):67-70.