劉德強
摘要:隨著現(xiàn)代科技水平的日益提高,手機等移動設(shè)備在人們的生活中的應用得越來越廣泛,這不僅代表著科技的進步,更是思想的進步,其中目前為止這類產(chǎn)品做的最好是美國Apple公司,其開發(fā)的iphone、ipad等一系統(tǒng)移動產(chǎn)品深受消費者的青睞,隨著其產(chǎn)品的廣泛應用,在iphone、ipad等產(chǎn)品的應用開發(fā)也更適用于現(xiàn)代人的生活。在課堂上常會有這么一種現(xiàn)象:老師不辭勞苦不停地點擊著鼠標去翻動PPT或者對PPT進行涂鴉操作,這使得老師或者其他使用PPT的人十分吃力,也不符合現(xiàn)代人的生活習慣,因此如果能在手機上操作PPT,這就會使得教學等變得十分容易。本次研究的項目就是在MAC OS X系統(tǒng)中進行開發(fā)針對PPT的課件演示系統(tǒng)。
關(guān)鍵詞:MAC OS X;課件演示系統(tǒng);設(shè)計;應用
中圖分類號:TP37 文獻標識碼:A 文章編號:1009-3044(2015)01-0202-02
1 背景及意義
目前,普通高校的課件還是以基于Windows上的PPT為主,它的技術(shù)相對比較成熟,制作起來也很容易,但是,隨著iphone等移動設(shè)備[1]的日益推廣,研究發(fā)現(xiàn),人們越來越希望通過移動設(shè)備去控制圖片、文字或流媒體的顯示,這種技術(shù)簡稱遠程控制技術(shù),遠程控制技術(shù)是未來互聯(lián)網(wǎng)的發(fā)展趨勢,如何實現(xiàn)用手機去控制課件演示就有了非常實際的意義。
基于MAC OS X的課件演示系統(tǒng)可以使課堂的教學方式更加多元化,這將改變傳統(tǒng)的人機控制模式,轉(zhuǎn)而采用遠程控制的操作課件,從而使得教師有更多的時間和同學進行互動,加快高校課堂教學多元化的進程,使老師和學生共享高科技帶來的好處,在一定程度上可以激發(fā)同學們的創(chuàng)造力,讓更多的學生投入到創(chuàng)新的發(fā)展中去,從而加快我國的高科技發(fā)展之路。其次,它還可以為MAC OS X平臺上的應用開發(fā)工作提供相關(guān)的借鑒經(jīng)驗,并且對于SOCKET通信的原理進行了深入的剖析。最后,可以為國內(nèi)移動設(shè)備的應用開發(fā)工作做一些貢獻。
2 總體結(jié)構(gòu)
本系統(tǒng)為C/S架構(gòu),根據(jù)C/S架構(gòu)的特點,需要分別建立服務端和客戶端。在本項目中,服務端的主要任務是向客戶端發(fā)送數(shù)據(jù),數(shù)據(jù)包括兩種,分別為圖片和命令,圖片以字節(jié)的形式發(fā)送到服務端,命令以特定格式的字符串形式發(fā)送到服務端。
3 模塊劃分
本系統(tǒng)共分為三個模塊,具有獨立的模塊的軟件比較容易開發(fā)出來。這是由于能夠分割功能而且接口可以簡化,當許多人分工合作開發(fā)同一個軟件時,這個優(yōu)點尤其重要。 獨立的模塊比較容易測試和維護,具體見圖1所示。
根據(jù)需求調(diào)研結(jié)果,該系統(tǒng)共分為發(fā)送數(shù)據(jù)模塊,接收數(shù)據(jù)模塊和圖片展示模塊。其中發(fā)送數(shù)據(jù)模塊包括發(fā)送圖片與發(fā)送命令兩個部分,同樣,接收數(shù)據(jù)模塊也分為接收圖片和命令兩個模塊。下面的功能性需求分析就從這幾個方面詳細描述課件演示系統(tǒng)的需求調(diào)研結(jié)果。
3.1 發(fā)送數(shù)據(jù)模塊
發(fā)送數(shù)據(jù)模塊是本系統(tǒng)的主要模塊之一,它主要負責客戶端和服務端的通信,根據(jù)數(shù)據(jù)發(fā)送的格式的不同,可以分為發(fā)送圖片數(shù)據(jù)和命令數(shù)據(jù)兩種發(fā)送方式,同時,服務端在接收時也要遵循這兩種格式進行接收。將發(fā)送數(shù)據(jù)的命令和圖片進行分開主要是兩者的數(shù)據(jù)量不一樣,而且接收方式也應該有所區(qū)別,圖片可以采取多線程接收,這樣也可以提高系統(tǒng)運行的速度。發(fā)送數(shù)據(jù)首先要確定發(fā)送數(shù)據(jù)的流程,這里首先發(fā)送的是圖片的數(shù)量,然后再將客戶端的圖片一張張傳送到服務端,如果傳送失敗的話還需要對其進行選擇重傳,以保證通信的質(zhì)量。雖然發(fā)送數(shù)據(jù)的形式可能不太一樣,但具有的步驟大同小異,這里對發(fā)送數(shù)據(jù)的流程進行了分析,其一般過程是先建立連接,然后發(fā)送命令或者數(shù)據(jù),最后等待對方的接收完畢的確認信息,這種流程在一般的應用程度開發(fā)中是非常普通的,因此也有一定的借鑒意義。為了更好地了解發(fā)送數(shù)據(jù)的一般過程,這里對流程進行繪圖,具體的結(jié)果見圖3。
發(fā)送數(shù)據(jù)的流程圖如圖2所示,發(fā)送數(shù)據(jù)的第一步是建立連接,在客戶端和服務端的連接建立成功后,客戶端先將圖片的數(shù)量發(fā)送到服務端,在服務端確認接收后再將圖片一張張傳送過去,由于一般來說圖片的大小不過超過2M,因此直接將圖片轉(zhuǎn)化為字節(jié)的形式一次性傳送過去,同樣,在服務端,先接收圖片的數(shù)量,然后用多線程的方式去接收每一張圖片。
3.2 接收數(shù)據(jù)模塊
接收數(shù)據(jù)也是系統(tǒng)的一個重要模塊,其業(yè)務流程收發(fā)送數(shù)據(jù)的流程決定,由發(fā)送數(shù)據(jù)模塊的分析可以看出,接收數(shù)據(jù)分析圖片數(shù)據(jù)和字符串數(shù)據(jù)兩種,其根本區(qū)別是兩種數(shù)據(jù)的形式不同,圖片數(shù)據(jù)為字節(jié)流數(shù)據(jù),而字符串而為一般的字符數(shù)據(jù),因此在接收時需要進行解析,以確定到底是圖片數(shù)據(jù)還是字符串數(shù)據(jù),圖3.5為接收數(shù)據(jù)的流程圖。它可以有效地反應接收數(shù)據(jù)時客戶端和服務端的具體流程,也就為問題的解決提供一些思路,因此需要進行仔細的分析和設(shè)計。接收數(shù)據(jù)的流程一方面來自老師的操作流程,另一方面是根據(jù)特定語言或者操作的具體方案進行設(shè)計,在分析和設(shè)計的過程,還進行了不斷地改進,這樣就使得整個流程不會出現(xiàn)錯誤。另外,接收數(shù)據(jù)后如果有需要還應向客戶端發(fā)送接收完畢的確認信息,以便客戶端不會長久地處于等狀態(tài),這樣在設(shè)計時就可以避免開發(fā)中出現(xiàn)的一些問題,業(yè)務流程不夠清晰等。
3.3 圖片展示模塊
服務端在接收圖片完成之后,對圖片進行展示。這里用到的是MT4J的技術(shù),在MT4J中新建一個場景,場景中添加所要展示的圖片,然后等待客戶端的命令,在需要對展示的圖片進行改變時,去除場景中的圖片并展示新的圖片,這樣圖片在展示時就會更加流暢。圖片展示是服務端對所接收的圖片進行展示并根據(jù)命令改變所要展示的圖片,具體命令有上一張和下一張的命令。
在接收圖片完成后就需要對圖片進行展示,最好采用全屏的方式進行展示,這就需要用到圖片瀏覽器,可以動態(tài)地改變所要展示的圖片,圖片在展示時有其他的端口監(jiān)聽客戶端的命令,如上一張圖片或者下一張圖片的命令,在接收到命令后,圖片瀏覽器用新的圖片替換原來的圖片,這樣就可以出現(xiàn)動態(tài)改變的效果。
4 結(jié)論
課件演示系統(tǒng)的實現(xiàn)可以使現(xiàn)代科技走進課堂,具有鮮明的時代特色,可以加強老師與學生間的互動,從而使課堂內(nèi)容的展示更加多元化,提高了課堂效率,相信隨著移動時代的來臨,總有一天大學的課堂會有越來越多的高科技元素。
課件演示系統(tǒng)對于移動設(shè)備上應用程序的開發(fā)也有著非常好的借鑒作用,其他的開發(fā)人員在MAC OS X平臺上開發(fā)時有了成功的經(jīng)驗可循,開發(fā)工作也就變得更加容易。這是本系統(tǒng)開發(fā)的一個優(yōu)點,同時它還支持擴展,為以后的開發(fā)也留有接口,在已有的基礎(chǔ)之上,可以對本系統(tǒng)進行進一步的開發(fā),如在大屏幕的多點觸摸等。
本系統(tǒng)應用了MAC OS X和Eclipse平臺進行開發(fā),綜合使用了XCode、Socket通信技術(shù),另外還使用到了開源框架MT4J,這對于開源框架的應用起到了一定的推動作用。當然本系統(tǒng)還存在一些不足之外,如對于iphone上手勢的應用還不成熟,限于時間關(guān)系,在以后的工作中還需要不斷地進行改進,以使整個系統(tǒng)更加人性化,增強系統(tǒng)的健壯性。另外,本系統(tǒng)經(jīng)過黑盒和白盒測試后,沒有出現(xiàn)BUG,可以使用。相信總有一天,高科技的產(chǎn)品會更快地應用到課堂中,從而使得課堂的教學更加多元化。
參考文獻:
[1] 張靜,康波.基于iPhone的增強現(xiàn)實技術(shù)的研究與應用[J].電子科技大學,2010(11):3-30.
[2] 陳靜,吳信才,張發(fā)勇,等.基于WebGIS的iPhone應用系統(tǒng)設(shè)計與實現(xiàn)[J].微計算機信息,2009(12):10-23.
[3] 嘉菲.滑動你的手指——仿iPhone應用軟件S2U2、S2V、S2P[J].數(shù)字通信,2008(2):23-32.
[4] 長生.iPhone新應用查看你的鄰居有多富有和節(jié)儉[J].程序員,2010(9):10-38.
[5] 楊光斌,王伊諾.Gale公司推出一項針對圖書館的iPhone應用[J].現(xiàn)代圖書情報技術(shù),2009(12):8-24.
[6] 楊正洪.IPHONE 4應用程序開發(fā)入門與實戰(zhàn)[M].清華大學出版社,2011(2):18-21.
[7] 達德尼,亞當森.iPhone SDK 3開發(fā)指南[M].電子工業(yè)出版社,2010:22-24.
[8] 納森.AppStore掘金——iPhone SDK應用程序開發(fā)[M].人民郵電出版社,2010:43-46.
[9] Dan Pilone、Tracey Pilone[M] 深入淺出iPhone開發(fā)[M].東南大學出版社,2010:31-35.
[10] 科施恩. Objective-C2.0程序設(shè)計[M].機械工業(yè)出版社,2009:51-55.
[11] Pan Xiao-dong.Research of iphone application UI design based on children cognition feature Art and Design Institute[C].CAID&CD,2010:200-211.