周舟 蔡宇飛 顏夢穎 張昱程 孫靖頤 何菊
摘? ?要:在“互聯(lián)網(wǎng)+醫(yī)療健康”的時代背景下,結(jié)合中醫(yī)“治未病”的思想,文章研究并開發(fā)了一款基于Android平臺的養(yǎng)生科普系統(tǒng)。該系統(tǒng)將食物的屬性和效果數(shù)據(jù)化,并在安全數(shù)據(jù)存儲的前提下進行深度數(shù)據(jù)挖掘,融合了中醫(yī)營養(yǎng)學(xué)、食療學(xué)等多門學(xué)科。以體質(zhì)問卷為基礎(chǔ),以游戲為載體,通過抽取食物卡和答題的方式以期達到科普藥膳養(yǎng)生知識的目的,讓大眾更深入地了解藥膳,引導(dǎo)人們正確地養(yǎng)生。
關(guān)鍵詞:Android平臺;中醫(yī)體質(zhì)測評;移動云
當代大眾對藥膳養(yǎng)生的概念只是略有耳聞,知道藥膳養(yǎng)生對身體好,卻不知道其中的禁忌、藥膳的特性(溫熱、刺激、清淡、甘平等)。目前市面上關(guān)于藥膳的APP較少,并且隨著互聯(lián)網(wǎng)的發(fā)展,查閱藥膳書籍的人越來越少,所以迫切需要科普藥膳知識APP。本文研究并開發(fā)了一款基于Android平臺的藥膳養(yǎng)生系統(tǒng),結(jié)合食品營養(yǎng)學(xué)知識,借助大數(shù)據(jù),將食療養(yǎng)生食譜以更加形象、具體的形式展現(xiàn)在用戶面前,指導(dǎo)人們?nèi)绾问秤萌粘J澄镎{(diào)理身體,使得健康得到保證,從而提高生活質(zhì)量。根據(jù)軟件的功能特色和研發(fā)目的,為其取名為“食遇記”。
1? ? 系統(tǒng)架構(gòu)
本系統(tǒng)采用3層架構(gòu)模式,分別是表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。(1)表示層,實現(xiàn)面向用戶的多種功能,為用戶提供友好的中醫(yī)體質(zhì)辨識、論壇及游戲闖關(guān)的操作平臺,監(jiān)聽與響應(yīng)用戶的請求,將用戶請求以及必要的健康數(shù)據(jù)上傳到下一層處理,或者將業(yè)務(wù)邏輯層反饋回來的體質(zhì)辨識結(jié)果或數(shù)據(jù)分析結(jié)果經(jīng)渲染后顯示給用戶。(2)業(yè)務(wù)邏輯層,是食遇記APP的核心層次,作為表示層和數(shù)據(jù)訪問層之間的模塊,對上需要將表現(xiàn)層傳入的問卷測評分數(shù)、游戲闖關(guān)分數(shù)進行計算和處理,并將計算結(jié)果反饋給表現(xiàn)層,表現(xiàn)層再將結(jié)果進行渲染后反饋給用戶;對下需要將計算處理得出的用戶體質(zhì)信息、游戲闖關(guān)結(jié)果、食物性味歸經(jīng)、藥膳配方等數(shù)據(jù)存儲進數(shù)據(jù)庫,為之后的數(shù)據(jù)挖掘、個性化推薦等功能提供數(shù)據(jù)基礎(chǔ)。(3)數(shù)據(jù)訪問層,主要為業(yè)務(wù)邏輯層提供穩(wěn)定的數(shù)據(jù)訪問接口,以及負責APP中數(shù)據(jù)的增、刪、改、查和持久性存儲功能。
業(yè)務(wù)邏輯層包括眾多的業(yè)務(wù)處理,分為用戶功能業(yè)務(wù)與后臺應(yīng)用業(yè)務(wù)。用戶功能業(yè)務(wù)主要有體質(zhì)測評、用戶信息管理、游戲闖關(guān)、論壇等模塊,能夠完整地實現(xiàn)面向用戶各個功能的使用要求。后臺應(yīng)用業(yè)務(wù)負責處理后臺運行程序,將用戶體質(zhì)信息數(shù)據(jù)進行對應(yīng)的數(shù)據(jù)分析與數(shù)據(jù)挖掘,得出適應(yīng)于用戶需求的食物推薦和藥膳配方并向下層記錄,同時向上層反饋,經(jīng)表現(xiàn)層渲染后展示給用戶。為了確保系統(tǒng)穩(wěn)定運行,設(shè)置完善的系統(tǒng)安全保障與標準保障體系,并做好權(quán)限管理、應(yīng)用集成、流程控制、數(shù)據(jù)庫接口等系統(tǒng)正常運行的必要組件。
使用表示層、業(yè)務(wù)層、數(shù)據(jù)訪問層的3層架構(gòu),有利于團隊開發(fā)。層次分明、結(jié)構(gòu)清晰,更有利于小組分工合作,為團隊工作提供了諸多便利。當某一層出現(xiàn)問題時,只需修改出現(xiàn)問題的那層即可,不會影響到其他層次,保證了系統(tǒng)的健壯性。
2? ? 系統(tǒng)實現(xiàn)
目前,對養(yǎng)生較為關(guān)注的人群主要是中老年人和頂著巨大壓力的年輕人,這部分群體雖有養(yǎng)生的意向,但是養(yǎng)生方面的知識比較匱乏,通過APP科普藥膳方面的知識,可以滿足社會各個人群的養(yǎng)生需求,并且以游戲的形式科普更容易讓人接受。
2.1? 游戲版塊
食遇記APP是以游戲為載體的科普類藥膳知識軟件。游戲方式以闖關(guān)為主,玩家會扮演一個普通人度過自己的一生,在游戲生活過程中,身體會出現(xiàn)各種各樣的不適狀況,玩家一開始會在教學(xué)的引導(dǎo)下搭配出合理的藥膳進行調(diào)理。隨著游戲的深入,玩家需要根據(jù)自己的癥狀、體質(zhì)、年齡等各方面因素為自己搭配藥膳,系統(tǒng)會根據(jù)特定的算法對玩家搭配出來的藥膳調(diào)理效果進行打分,分數(shù)越高關(guān)卡獎勵就越多。隨著進度的進行,玩家需要照顧的不僅是普通人,還需要照顧孕婦、孩子、老人等,這些人群身體狀況較為復(fù)雜,禁忌較多,搭配出合理藥膳的難度也就越大,需要玩家對藥膳知識的理解更加深入,無形中達到了科普的目的。游戲闖關(guān)界面如圖1所示。
2.2? 問卷功能
APP在游戲之外,還提供了體質(zhì)問卷的輔助功能,不僅讓玩家在填寫問卷的過程中更加了解自己的身體狀況,還針對游戲里可能出現(xiàn)的體質(zhì)起到了介紹的作用。首先,APP會提供一套最專業(yè)的體質(zhì)問卷;其次,在用戶填寫完問卷之后,系統(tǒng)設(shè)計相應(yīng)的算法對問卷結(jié)果進行計算并分析;最后,不僅會給出用戶的體質(zhì)情況分析結(jié)果,還會對其他體質(zhì)進行一個簡單的科普,具體如圖2所示。
2.3? 論壇功能
系統(tǒng)提供論壇功能,玩家可以在論壇中討論各自對藥膳的理解和心得,定期由管理員來審核內(nèi)容,保證內(nèi)容的健康。
論壇部分主要有發(fā)帖、評論、收藏等功能。頁面布局運用ScrollView,進入論壇首頁后用戶可以滑動瀏覽,找到自己感興趣的帖子,點擊了解詳情。每條帖子下都有評論和收藏按鈕,點擊以后觸發(fā)事件,跳轉(zhuǎn)到相應(yīng)頁面,用戶可以點擊評論發(fā)表自己的觀點,或者點擊收藏方便將來閱讀。收藏的內(nèi)容保存到數(shù)據(jù)庫中,收藏中心從數(shù)據(jù)庫中調(diào)用并顯示,用戶在以后的使用過程中可以點擊收藏中心直接查看。用戶如果想要分享自己的養(yǎng)生知識或者有疑問想和其他用戶討論,可以直接點擊發(fā)表帖子按鈕,跳轉(zhuǎn)到發(fā)帖頁面,從而發(fā)表自己的看法,發(fā)表后的帖子保存在數(shù)據(jù)庫中,出現(xiàn)在論壇首頁,用戶可以在自己的帖子下看到其他用戶的評論,并與其他用戶進行交流。論壇界面如圖3所示。
3? ? 關(guān)鍵方法
3.1? 中醫(yī)體質(zhì)測評
1987年,王琦等在論文中首次明確提出中醫(yī)體質(zhì)概念,隨著1995年《中醫(yī)體質(zhì)學(xué)說》的出版,這一概念最終確定下來,正式作為一個學(xué)科來發(fā)展。偏頗體質(zhì)狀態(tài)影響個人的健康狀況與疾病的易罹性和傾向性[1],平和體質(zhì)是保持健康的重要基礎(chǔ)。因此預(yù)防疾病發(fā)生過程中,需應(yīng)對不同偏頗體質(zhì)采用不同的精神調(diào)攝、飲食養(yǎng)生等[2]。如今國家正大力支持、推廣“治未病”健康醫(yī)學(xué),而“治未病”的基礎(chǔ)就是體質(zhì)辨識。因此,養(yǎng)生要先從了解自身開始,每個人都可能偏向一種或多種體質(zhì),確定每個人的體質(zhì)就成了藥膳推薦的基礎(chǔ)和關(guān)鍵。食遇記APP提供問卷功能,應(yīng)對9種體質(zhì)提供了9套問卷(每種體質(zhì)有7~8個問題),用戶需按照個人情況如實回答問題,每種體質(zhì)可算出各自對應(yīng)的原始分,求出原始分后,系統(tǒng)會幫用戶把原始分轉(zhuǎn)化為轉(zhuǎn)化分,用戶根據(jù)自己的轉(zhuǎn)化分來判斷自己是否傾向某種體質(zhì)。原始分和轉(zhuǎn)化分的評分標準:沒有(1分)、很少(2分)、有時(3分)、經(jīng)常(4分)、總是(5分),計算公式如下:
(1)原始分:各個問題的分數(shù)總和。
(2)轉(zhuǎn)化分:[(原始分-條目數(shù))÷(條目數(shù)×4)]×100。
計算總分和轉(zhuǎn)化分的代碼如下:
//計算轉(zhuǎn)化分并展示給用戶
score = score_1 + score_2 + score_3 + score_4 + score_5 + score_6 + score_7;
final_score = ((score - que_num) / (que_num * 4)) * 100;
Toast.makeText(full_of_qiActivity.this, “你的得分是” + “:” + final_score + “分”, Toast.LENGTH_LONG).show();
t.LENGTH_LONG).show();
評分標準如表1所示,除平和質(zhì)外其余體質(zhì)都是偏頗體質(zhì),各體質(zhì)分數(shù)分開計算。
3.2? 云技術(shù)
云技術(shù)指在局域網(wǎng)或廣域網(wǎng)內(nèi)將硬件、軟件、網(wǎng)絡(luò)等一系列資源統(tǒng)一起來,實現(xiàn)數(shù)據(jù)計算、儲存、處理和共享的一種托管技術(shù)[3]。本系統(tǒng)應(yīng)用云技術(shù)將用戶的健康數(shù)據(jù)及中醫(yī)健康知識等龐大的數(shù)據(jù)存至云健康數(shù)據(jù)中心,系統(tǒng)具有良好的并發(fā)性和穩(wěn)定性,用戶可以在任一時刻、任一地點快速地訪問數(shù)據(jù)庫中的信息[4-5]。針對用戶的健康數(shù)據(jù),采用云計算等進行挖掘,并對其進行管理與分析。通過對這些數(shù)據(jù)進行分析研究,可以制定針對不同用戶的健康反饋信息和個性化的中醫(yī)調(diào)養(yǎng)服務(wù)方案[6]。由于食遇記APP有大量的后臺數(shù)據(jù)需要存儲在服務(wù)器端,所以一個穩(wěn)定、安全的服務(wù)器后臺是非常必要的。出于安全和開發(fā)成本的考慮,本系統(tǒng)采用了云端服務(wù)器作為后臺服務(wù)器。食遇記APP采用的是Bmob后端云服務(wù),Bmob后端云有著消息推送、即時通信、安全驗證、備份還原、團隊管理等多種功能,既迎合了團隊開發(fā)的需要,又保證了后臺數(shù)據(jù)的安全,一定程度上降低了軟件的開發(fā)成本。食遇記APP將用戶賬戶信息、食物圖鑒、藥膳配方等數(shù)據(jù)存儲在云端服務(wù)器,既保證了數(shù)據(jù)存儲的安全、可靠,又省去了大量的代碼編寫,因為只需簡單地創(chuàng)建規(guī)定格式的Java類即可在Bmob后端云生成對應(yīng)數(shù)據(jù)表。繁瑣的增、刪、改、查功能的代碼也只需要調(diào)用云端的API即可,節(jié)約了大量的開發(fā)成本。存儲在云端的數(shù)據(jù)添加表如圖4所示。
3.3? 挖掘分析
數(shù)據(jù)挖掘的主要任務(wù)是從海量的數(shù)據(jù)中發(fā)掘出數(shù)據(jù)間隱藏的規(guī)律或者關(guān)系,從而運用這些規(guī)律指導(dǎo)實踐。在醫(yī)療衛(wèi)生領(lǐng)域數(shù)據(jù)挖掘技術(shù)有著廣闊的前景。隨著醫(yī)療信息化的普及,醫(yī)療健康領(lǐng)域正積累起海量的健康數(shù)據(jù),根據(jù)這些數(shù)據(jù)開發(fā)更有效的醫(yī)療產(chǎn)品,根據(jù)市場需求研發(fā)新產(chǎn)品,幫助醫(yī)生進行臨床決策等。食遇記APP需要對每個用戶進行各個體質(zhì)的分數(shù)計算,轉(zhuǎn)化分換算并根據(jù)轉(zhuǎn)化分進行體質(zhì)類型判定。為了減輕服務(wù)器端的負擔,這些功能在表示層已經(jīng)實現(xiàn)。得到用戶9種體質(zhì)的轉(zhuǎn)化分后,系統(tǒng)會根據(jù)分數(shù)判斷出用戶的體質(zhì),然后和數(shù)據(jù)庫中食物信息和藥膳配方進行比對,根據(jù)不同體質(zhì)篩選出合適的食物和藥膳,做出個性化的推薦方案。用戶每次體質(zhì)測試可能會有不同的結(jié)果,因此每次測試算出的體質(zhì)傾向和體質(zhì)類型會存入數(shù)據(jù)庫,存儲在云端的數(shù)據(jù)庫表中的部分數(shù)據(jù)如圖5所示。用戶可以從多次體質(zhì)測試的結(jié)果中判斷自己的身體變化情況。應(yīng)對不同的體質(zhì),食遇記APP會提供對應(yīng)的健康調(diào)理方法,如對該體質(zhì)類型的解說、疾病傾向和保養(yǎng)建議等。
4? ? 結(jié)語
“養(yǎng)生”觀念逐漸深入到大眾心目中,但是大眾的養(yǎng)生往往缺乏科學(xué)的依據(jù),有時候甚至是盲目養(yǎng)生。本款A(yù)PP在此給大眾提供一個科學(xué)的平臺,通過充滿趣味的闖關(guān)模式進行養(yǎng)生相關(guān)知識的科普,寓學(xué)于樂,科學(xué)地進行養(yǎng)生。即便養(yǎng)生觀念不斷普及,現(xiàn)在仍有大多數(shù)人等到身體不適才尋求醫(yī)療救助,可對于一些疾病來說,出現(xiàn)不適時也許已經(jīng)錯失最佳治療時機。本系統(tǒng)著重“治未病”,通過幫助用戶深入了解自身體質(zhì),選擇合適的食物進行調(diào)養(yǎng),真正實現(xiàn)“食療”“食養(yǎng)”。眾所周知,“是藥三分毒”,而本系統(tǒng)所要做的,就是通過“不用藥”,即把疾病“扼殺于搖籃中”,使得用戶對自己的身體健康有更好的把握和保障。
[參考文獻]
[1]謝樹瑩.中醫(yī)體質(zhì)辨識與數(shù)據(jù)分析平臺的研究與實現(xiàn)[D].南京:南京中醫(yī)藥大學(xué),2018.
[2]李倩茹,王琦,李玲孺,等.中醫(yī)體質(zhì)辨識在“治未病”中的應(yīng)用[J].中醫(yī)學(xué)報,2019(8):1586-1589.
[3]曾用強.“互聯(lián)網(wǎng)+教育”中的學(xué)習測量[J].英語教師,2016(15):6-8,15.
[4]蔣常炯,劉正.基于云計算的移動應(yīng)用開發(fā)的探究[J].江蘇教育學(xué)院學(xué)報(自然科學(xué)版),2013(4):13-15.
[5]羅根源.云技術(shù)和云的發(fā)展[J].科技傳播,2011(9):203-204.
[6]尚岑,王東雨,宇文姝麗.數(shù)據(jù)挖掘技術(shù)在健康數(shù)據(jù)分析中的應(yīng)用[J].醫(yī)學(xué)信息學(xué)雜志,2016(5):54-58.
Design and development of medical diet health science
popularization system based on Android
Zhou Zhou, Cai Yufei, Yan Mengying, Zhang Yucheng, Sun Jingyi, He Ju*
(Nanjing University of Chinese Medicine, Nanjing 210000, China)
Abstract:In the background of the “Internet+ medical health”, combined with the thought of the traditional Chinese medicine “cure the disease”, the article studies and develops a health-preserving popular science system based on the Android platform. The system data of the attribute and effect of the food, and carries on the deep data mining on the premise of the safe data storage, and combines the multi-gate subjects such as the traditional Chinese medicine nutrition and the dietotherapy. On the basis of the constitution questionnaire, taking the game as the carrier, through the method of drawing the food card and the answer, so as to achieve the purpose of the health-preserving knowledge of the popular science and medicinal food, the people can better understand the medicated diet and guide the people to keep the health properly.
Key words:Android platform; physique evaluation of traditional Chinese medicine; move Cloud