胡東旭 彭飛辰 喬燁 陳春堃 王佟 何東健
摘要:為滿足陽臺種植新手便捷獲取種植品種及種植管理技巧的需求,利用微信web開發(fā)者工具開發(fā)一種基于微信小程序的種植助手。陽臺種植助手小程序可實現(xiàn)對陽臺種植用戶的即時服務(wù)與個性化服務(wù),為種植愛好者提供新的種植體驗。
關(guān)鍵詞:陽臺種植;微信小程序;助手;種植信息管理
中圖分類號:TP311.56? ? 文獻(xiàn)標(biāo)識碼:A? ? 文章編號:1674-1161(2020)05-0030-03
隨著我國經(jīng)濟(jì)社會的快速發(fā)展,人們對居住環(huán)境和生活情趣的要求越來越高。陽臺種植不僅可以美化居住環(huán)境,而且能夠陶冶情操,提升生活品位,近年來發(fā)展非常迅速。然而,大量花草愛好者在嘗試種植的初期,因缺乏種植植物、花卉的知識,無法照顧好高價購買的植物,導(dǎo)致喜愛的植物生病、枯萎或死亡,既造成資源浪費,也影響種植者的心情和生活質(zhì)量。目前市面上有許多關(guān)于花卉種植的書籍,但大多專業(yè)性過強、晦澀難懂,并不適合廣大普通居民閱讀、學(xué)習(xí)種植知識,因此急需一款專門針對花草愛好者的手機App軟件,面向具有花卉種植興趣愛好但沒有更多時間鉆研種植技術(shù)的初學(xué)者,幫助他們選擇適宜種植的花卉和提供種植過程中澆水、施肥、陽光照射等指導(dǎo)服務(wù),使他們種植好花卉并在過程中享受花卉種植的樂趣。微信小程序具有易于推廣、無須安裝、可隨時使用的優(yōu)點。截至 2018年底,微信小程序用戶數(shù)量突破6億,已覆蓋超過200個細(xì)分行業(yè),服務(wù)超過1 000億人次用戶。本課題基于微信小程序開發(fā)一款適于陽臺種植管理的手機App,具備推薦品種、記錄種植過程、查詢種植數(shù)據(jù)、提供種植技巧、顯示實時天氣等功能,可實現(xiàn)種植管理的信息化、智能化。
1 陽臺種植助手總體設(shè)計方案
1.1 開發(fā)工具與語言
小程序的開發(fā)與HTML5普通網(wǎng)頁的開發(fā)相比有很大的相似性,其主要開發(fā)語言是JavaScript。注冊微信小程序的過程為:1) 在微信小程序注冊一個賬號,登錄小程序后臺,可在“開發(fā)/開發(fā)設(shè)置”菜單看到小程序的AppID(小程序平臺的身份證)。2) 下載開發(fā)者工具,用申請的AppID登錄后,可在開發(fā)者工具右側(cè)編寫代碼,并進(jìn)行編譯。3) 單擊開發(fā)者工具頂部菜單欄的“上傳”按鈕,填寫小程序版本號及項目備注,上傳成功后,登錄小程序管理后臺,在“開發(fā)管理/開發(fā)版本”中可找到上傳的版本。4) 經(jīng)審核通過后,登錄小程序管理后臺,在“開發(fā)管理/審核版本”中,可看到通過審核的版本,選擇“發(fā)布科技”。
1.2 數(shù)據(jù)庫設(shè)計
考慮到上線小程序的域名管理、證書申請等操作對開發(fā)周期的影響,利用小程序云開發(fā)的云數(shù)據(jù)庫來存取數(shù)據(jù)。NoSQL數(shù)據(jù)庫具有高可用性、高擴展性等特點,且數(shù)據(jù)查詢時能高效處理,結(jié)構(gòu)設(shè)計上也較為簡單。所以選用NoSQL數(shù)據(jù)庫進(jìn)行開發(fā)。
設(shè)計的數(shù)據(jù)庫結(jié)構(gòu)由plants,user,articles和collect等4張表構(gòu)成。plants(plant_id,植株名稱,簡介,花色,繁殖,科屬,蟲害,花期,種植,選盆,修建,擇土,澆水,類型);user(user_id,身份標(biāo)識,注冊時期,頭像地址,所在城市,性別,用戶名,收藏植物);articles(articles_id,作者名,內(nèi)容,發(fā)表日期,文章內(nèi)圖片地址,文章標(biāo)題);collect(collect_id,天數(shù),操作記錄)。其中,plants表中儲存植物的主要數(shù)據(jù),該表數(shù)據(jù)主要由網(wǎng)絡(luò)和手冊等數(shù)據(jù)進(jìn)行收集、整理得到;articles表為論壇開發(fā)服務(wù)。
在搜索功能中,將輸入字段與植株名稱進(jìn)行對比,若匹配則調(diào)出相應(yīng)數(shù)據(jù),若無對應(yīng)則輸出隨機id的植株作為推薦。在品種收藏與種植記錄管理中,若用戶選擇收藏,則在user表user_plantarray中添加該植物id,在主頁顯示欄調(diào)用時聯(lián)立user表與plants表,顯示植株的名稱等數(shù)據(jù),同時將plant_id錄入表collect中,并在該表中記錄其天數(shù)和操作記錄,其他部分直接根據(jù)主碼調(diào)用數(shù)據(jù)顯示。
1.3 系統(tǒng)結(jié)構(gòu)與資源環(huán)境
小程序采用B/S與C/S結(jié)合的結(jié)構(gòu),分為4層:小程序視圖層、微信App、小程序后端、微信后端。通過騰訊云小程序解決方案,將前后端交由騰訊云托管。
騰訊云服務(wù)器資源配置為:CPU 1核,2 G以上內(nèi)存;私有網(wǎng)絡(luò);Windows Server 2010 R2數(shù)據(jù)中心版64位操作系統(tǒng);100 GB存儲;微信web開發(fā)者工具。
1.4 軟件設(shè)計
設(shè)計的軟件應(yīng)能實現(xiàn)推薦品種、記錄種植過程、查詢種植數(shù)據(jù)、提供包括植物生長各重要時間段注意事項在內(nèi)的多種種植技巧,并提供顯示實時天氣,提高實際應(yīng)用價值。
1.4.1 框架設(shè)計模式 按照MVC模式進(jìn)行開發(fā),程序由Model(模型層)、View(視圖層)、Controller(控制器層)組成,其優(yōu)點是在設(shè)計程序的過程中可以將界面和業(yè)務(wù)邏輯分離。為了實現(xiàn)程序之間組件的低耦合,盡量減少程序內(nèi)部各組件之間的相互依賴和相互制約,采用依賴注入對MVC模式進(jìn)行改進(jìn)。依賴注入是實現(xiàn)控制反轉(zhuǎn)的一種途徑,即按照依賴倒置原則和單一職責(zé)原則對程序結(jié)構(gòu)進(jìn)行設(shè)計,使軟件的系統(tǒng)架構(gòu)具有良好的可擴展性及穩(wěn)定性。軟件結(jié)構(gòu)設(shè)計如圖1所示。
1.4.2 UI設(shè)計方案 擬通過對wxss樣式的編輯,使用微信黑白字體配合模式,以大詞條的形式來提高品種和種植建議板塊的用戶體驗。采用wxml標(biāo)記語言與wxss共同對系統(tǒng)組件位置、尺寸等屬性進(jìn)行動態(tài)布局,實現(xiàn)系統(tǒng)頁面對不同尺寸屏幕的自適應(yīng)。為實現(xiàn)主要板塊的自由切換,使用標(biāo)簽分頁(Tab)導(dǎo)航。標(biāo)簽分頁欄可固定在頁面頂部或底部,便于用戶在不同的分頁間做切換。將底部欄分為數(shù)個主要模塊進(jìn)行分別設(shè)計。UI設(shè)計方案示例如圖2所示。
2 程序的功能模塊
程序共有3個功能模塊,每個模塊由若干功能組成,如圖3所示。部分功能模塊頁面示例如圖4所示。
2.1 花圃模塊
花圃模塊提供當(dāng)日實時天氣與當(dāng)前用戶已選擇種植植物信息,包括種植收藏和實時天氣部分。1) 種植收藏。包含植物的圖片、名稱及種植天數(shù)(從收藏日起所經(jīng)過的天數(shù)),三者組成一株植物的收藏(生長)歷程,可以通過左滑彈出的刪除選項取消關(guān)注,點擊進(jìn)入該植物的管理頁面,顯示其生長記錄與生長中的重要時間點。2) 實時天氣。通過外部API導(dǎo)入用戶當(dāng)?shù)靥鞖庑畔ⅲ蕴鞖鈭D標(biāo)形式實時顯示日期與當(dāng)?shù)氐奶鞖?、氣溫?/p>
2.2 發(fā)現(xiàn)模塊
發(fā)現(xiàn)模塊提供按需求搜索植物、瀏覽植物相關(guān)文章和隨機列舉出各類植物的功能,包括搜索、優(yōu)選文章和隨機植物部分。1) 搜索。包含直接輸入名稱進(jìn)行搜索與添加條件搜索,直接搜索下輸入植物具體名稱,返回搜索結(jié)果或者提示該植物不存在。2) 優(yōu)選文章。提供一定數(shù)量的植物相關(guān)文章供用戶瀏覽閱讀,用戶可以自主發(fā)表文章或者隨意瀏覽文章。3) 隨機植物。在切換至發(fā)現(xiàn)部分時隨機列出一定數(shù)量的植物信息,供對種植查詢有疑惑的用戶瀏覽選擇,用戶點擊后進(jìn)入該植物的詳細(xì)信息頁面。
2.3 個人中心模塊
個人中心模塊在啟動小程序后登錄獲取微信相關(guān)信息并予以顯示,包括瀏覽記錄、用戶反饋和通知部分。1) 瀏覽記錄??梢圆榭从脩魹g覽文章、植物信息的歷史記錄,兩種記錄均在同一隊列中,可以刪除。2) 用戶反饋??梢酝ㄟ^郵件發(fā)送向開發(fā)者提出意見或建議。3) 通知。為用戶提供當(dāng)前小程序版本等信息。
3 結(jié)語
針對陽臺種植新手急需便捷獲取種植品種及種植管理技巧的實際應(yīng)用需求,滿足廣大花卉種植愛好者信息服務(wù)需求,充分利用微信平臺用戶龐大的傳播優(yōu)勢,將推薦品種和種植建議、記錄種植過程、查詢種植數(shù)據(jù)、顯示實時天氣等功能在微信小程序中實現(xiàn),開發(fā)了基于微信小程序的陽臺種植助手,實現(xiàn)了對陽臺種植用戶的即時服務(wù)與個性化服務(wù),對無種植經(jīng)驗、工作繁忙的年輕人享受種植樂趣、緩解工作壓力、提高生活質(zhì)量有一定的幫助。未來將進(jìn)一步借鑒植物生長規(guī)律并建立模型,采用生長模型提高種植建議的時效性,并擴充數(shù)據(jù)庫容量,將更多植物添加到服務(wù)范圍中去。
參考文獻(xiàn)
[1] 劉超超,金健飛.數(shù)字化賦能設(shè)施農(nóng)業(yè)種植托管服務(wù)[J].農(nóng)業(yè)工程技術(shù),2020,40(7):18-21.
[2] 涂相華,薛錫雅,曾志平,等.“WECO課堂”:基于微信小程序的師生交互系統(tǒng)[J].現(xiàn)代教育技術(shù),2018(5):109-114.
[3] 陳維榕,彭志良,李莉婕,等.基于微信小程序的貴州12316三農(nóng)服務(wù)系統(tǒng)設(shè)計與實現(xiàn)[J].農(nóng)技服務(wù),2020,37(5):46-48.
[4] 聶佰玲,武將將,沈昊.陽臺菜園智能控制系統(tǒng)的設(shè)計與研究[J].產(chǎn)業(yè)與科技論壇,2019,18(1):64-65.