霍雨佳 陸子豪 沈謨嬌
摘 要: 文章介紹的背單詞軟件是一款基于android平臺的應用軟件,其主要功能有單詞學習,單詞背誦,單詞測試,真人發音,添加生詞本等。通過數據庫技術實現碎片學習,提高背單詞效率,同時實現了生詞的導入功能,能隨時將最新生詞、關鍵詞通過導入功能放入手機。
關鍵詞: Android; 日語; 軟件開發; 單詞學習
中圖分類號:TP3 文獻標志碼:A 文章編號:1006-8228(2018)03-50-03
Research and application of Japanese word learning APP platform
Kylin, Howell, Majorie
(Nantong University, Nantong, Jiangsu 226019, China)
Abstract: The reciting-words software introduced in this paper is the application software on Android platform. Its main functions are word learning, word recitation, word test, real person pronunciation, and new words adding. With database technology, the fragmented learning can be realized to improve the efficiency of memorizing words; and the realization of the function of importing new words, can put the latest words and keywords into the mobile phone at any time.
Key words: Android; Japanese; software development; word learning
0 引言
本項目旨在為日語專業學生和商務日語使用人群量身搭建符合其專業學習特色的學習與交流軟件平臺。本文對背單詞軟件開發中有關系統設計,系統實施方法和詞庫設計等方面進行了探索,以推動日語學習輔助軟件開發。
1 系統架構
1.1 開發平臺——Eclipse
Eclipse 是一個開放源代碼的、基于Java的可擴展開發平臺。就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建開發環境。幸運的是,Eclipse 附帶了一個標準的插件集,包括Java開發工具(Java Development Kit,JDK)。
1.2 開發語言和開發環境——Java
Java是一種面向對象的編程語言,它不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態面向對象的編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。
1.3 開發框架及架構
HTML5自2014年問世以來,受到業界眾多好評,它實現了純HTML5進行手機應用的開發,對于中小型項目,使用HTML5+后端接口的開發有著開發效率高、調用簡單和維護方便等優勢,本項目就是用HTML5+JAVA來實現日語app的開發。用到的技術框架包含HTML5、JQuery、JAVA、Spring、SpringMVC、Mybatis等,通過HTML5打包生成app調用Java后端接口的方式進行開發,實現前后端分離,分工更加明確,項目周期大大縮短。
2 總體設計與需求分析
2.1 功能架構介紹
功能架構如圖1所示。
[日語學習APP][登錄注冊模塊][單詞學習模塊][用戶數據模塊][娛樂模塊]
圖1 功能架構圖
2.2 UI設計
APP部分界面如圖2、圖3所示,首頁主題采用日系風格,登入界面用日本最具代表性的櫻花作為背景,讓使用者有一種更加親近的感覺。內容界面的設計簡潔明了,摒棄花哨的界面,讓用戶能更專注于app的使用,進行日語的學習。
圖2 登錄頁面UI 圖3 單詞背誦頁面UI
2.3 數據庫設計
通過前期調研,根據需求設計了數據庫,根據使用條件滿足數據庫設計對應的三大范式。在本項目中我們選用了關系型數據庫MariaDB作為數據庫,由于其開源免費,更適用于中小型項目的開發。數據表如圖4,圖5,圖6所示。
3 各模塊的具體實現
3.1 注冊/登錄模塊
注冊模塊我們集成了第三方手機短信/郵箱驗證方式,大大降低非法注冊,提高了用戶賬戶的安全性,同時避免用戶遭到不明身份的用戶的騷擾。注冊時只需填入手機號/郵箱號和密碼,大大簡化了注冊的過程。用戶的個人信息可以在登錄之后進行完善,我們對完善個人信息的用戶給予一定的獎勵,以促進用戶能夠完善個人信息,以使我們對用戶提供個性化幫助。
登錄模塊設計了一個有時效性的免登錄功能,即在有效時間周期內,用戶只需登錄一次,之后用戶再次進入可以免登錄,讓用戶省去了每次登錄輸入賬號密碼的麻煩。當然為了用戶賬號的安全,我們為用戶設定了一個免登錄的有效時間。
用戶的密碼使用了加密算法,防止服務器遭受到黑客入侵時用戶的賬號信息被盜取,并且我們會對服務器上的相關用戶數據做周期性的備份,以防用戶信息意外丟失。
3.2 用戶信息模塊
用戶信息包括頭像、昵稱、手機號、郵箱等,并記錄用戶連續學習的天數,讓用戶更直觀的知道自己堅持了多久,我們從后臺也可以通過該天數來進行用戶各項數據的計算,如每日學習單次數量,通過圖表的形式展示給用戶以供參考。
系統會根據用戶的個人信息做一些相應的推薦,如:根據各用戶的職業、年齡等來給用戶推薦一些適合于他們自身的學習計劃,通過用戶的個人信息等,后期我們還可以將這些數據通過大數據來進行分析,完善app使之更貼近用戶的需求及使用習慣。
3.3 單詞學習模塊
該模塊是整個APP中最重要的一個模塊,分別由以下幾個功能構成。
⑴ 單詞學習
系統將自帶數個單詞庫,每個單詞庫中包含相應類型的單詞,有日語原文、發音音標、中文翻譯、語音發音、示例語句等。用戶將自己想要學習的系統單詞庫添加到自己的學習計劃中,學習每個單詞之后都會讓用戶選擇該單詞是否已經完全學會而不需要再次出現在學習的單詞列表中,之后繼續學習下一個單詞。單詞列表將會一直循環直至用戶將所有單詞標記為已學會為止。
⑵ 個性化詞庫
除了系統自帶的詞庫外,app還支持用戶自定義詞庫,上傳指定格式的excel文件進行詞庫的添加,我們在該功能中添加excel模板的下載,讓用戶不僅僅局限于本系統中的單詞學習,更加人性化。
⑶ 計劃制定
在選擇詞庫進行學習時,系統將讓用戶對選擇的詞庫制定一個學習計劃,選擇學習該詞庫的所有單詞需要幾天,根據天數來平均,獲取每日學習的單詞數量,并從詞庫中抽取該部分單詞給用戶學習。
對于學習進度快的用戶,支持計劃提前,即提前獲取未來需要學習的單詞;沒有完成當天學習計劃的用戶可把未學習的部分累計到下一日繼續學習,當然也支持用戶修改計劃來延緩或提前完成計劃。
⑷ 復習
統計所有用戶已經學習過的單詞,用戶可以隨時查詢到已經學習過的單詞進行復習,支持模糊查詢,詞庫篩選等。
3.4 數據推廣模塊
對于各種日本娛樂音樂影視等進行推送,將日本有名的影視網站嵌入app中,讓用戶能體驗到日本的本地文化和相關信息,盡力貼近實際生活,并且在長時間學習之后也能娛樂放松。為那些希望通過看電影及動漫學習日語的用戶提供支持。
4 結束語
市場上針對日語專業的學習類APP偏少,缺乏針對性和科學的記憶方法,一些小應用做不到全面、高效,只訓練一項技能,無法滿足日語專業學生的需求。我們將全面吸取同類產品的優點,采納英語學習APP的成功模式,對產品進行界面、記憶方式的創新。
根據市場調查,用戶最希望體驗監督學習,通過打卡等功能忠實記錄學習情況,確保每天學習的時間。同時,能夠對所學單詞分組管理,根據不同情況安排相應任務,這樣用戶才能有耐心和毅力,堅持做到每天學習。我們也將改變傳統背單詞形式,模仿百詞斬等增添圖片記憶法。我們希望用戶根據自己的習慣選擇記憶方式,習慣使用單詞卡記憶的用戶,我們也能夠推薦一份合理的單詞表,以期用戶能夠更高效、科學的學習和記憶。
參考文獻(References):
[1] 楊豐盛.ANDROID應用開發揭秘[M].機械工業出版社,
2010.
[2] 李剛.瘋狂Android講義[M].電子工業出版社,2013.
[3] 景保玉.2010中國移動應用開發現狀與趨勢大調查,
2011.1.
[4] 李晉,韓東晉.Java的昨天,今天和明天[J].信息與電腦(理論
版),2011.1.
[5] MichaelBlaha.UML面向對象建模與設計[M].人民郵電出版
社,2006.
[6] Kyle Simpson.你不知道的JavaScript[M].人民郵電出版社,
2015.