近期接到客戶單子,說是要開發一款微信答題小程序,類似頭腦王者答題游戲的項目。要在一個月內上線開測,時間有些緊張,馬上組織技術團隊開始研究。
一、項目需求分析:

通過該文檔我們可以看出,功能還是蠻多的,總結一下大概的答題模式涉及:個人每日答題、好友一對一PK答題、排位身份升級賽答題、團隊多人答題。外加輔助功能如:簽到、答題道具卡(難題跳躍卡、積分翻倍卡)、新聞公告、系統設置等。
二、市場調研分析結果
通過市場部的同事反應,目前有做答題小程序這塊的幾乎都是用的微擎的源碼,買一套大概在幾千元左右。但是其中的坑不少,例如:
1、 代碼是否開源,這點做開發的人員最在意了,如果代碼不開源,那對后期的功能延伸二次開發工作基本上就是掐死了。
2、 是否有版權,這點公司的法務也進行了深入了解,目前互聯網版權糾紛案例層出不窮,各類的侵權盜版涉及訴訟的案例比比皆是。毫無疑問,微擎的是沒有版權的!
想到這兩點,驚出了一身冷汗,趕快喝杯82年的雪碧壓壓驚,哈哈!
言歸正傳,雖然用微擎的框架可能節省一些開發成本,但后期的問題太多了,后患無窮啊!本著對客戶負責的原則,微擎的框架堅決不能用!
三、JAVA技術開發
連夜組織技術團隊討論,綜合各方面的分析結果,決定用java技術從底層開發一款答題小程序,技術應用前臺原生開發的小程序。后臺用的springmvc + ibatis, 接口服務用的http協議+websocket協議。

雖然這樣耗費的精力會非常大,但能夠做出一款成熟的、領先于市場上其他答題小程序功能產品,也是非常值得的。
四、開發難點剖析
答題小程序這樣的項目開發起來難點在于交互性,也就是單用戶的答題還好說,因為怎么玩都是用戶自己的事情。但如果涉及多用戶,例如好友pk答題、排位賽升級答題、團隊賽多人答題 這樣的就麻煩了,因為不只是你一個人在答題,還需要考慮對手或隊友的答題情況,如果一方卡克、網絡終端或其他種種不可遇見的因素,都可能導致答題過程中出現問題。不過經過嚴格的測試,這些問題都一一解決了!
五、答題功能模塊分析
1、每日簽到
簽到可以有效的提升用戶粘度,每天簽到領取積分,連續簽到有額外獎勵。

2、每日學習答題

答題版塊每組題目為5道,題目從題庫中隨機抽取,包括:教師理論基礎、教師公共課、面試技巧等方面知識。
題目比例可自定義,例如教師理論基礎3,教師公共課1,面試技巧1。
點擊今日任務進行答題,答題時間計時20秒,在規定的時間內答題,超時放棄答題。答對即可獲得積分(答對一題獲得100),答錯沒有積分。
連續答對題目,積分遞增。如:連續答對兩題獲得300分,連續答對三題獲得500分,以此類推。中間答錯重新開始后按照原來的一題100分開始)
3、好友一對一PK答題
可邀請微信中的好友進行一對一PK答題

4、排位升級賽答題
成今日任務后可自由選擇是否進行排位賽。個人排位賽分為以下七個段位:青銅、白銀、黃金、鉑金、鉆石、宗師、王者。
個人排位為隨機匹配對手進行1V1答題比賽,每人每天3次機會。
如果參加排位賽,戰勝對手就可以加一星,當前段位星滿后,自動開啟下一段位,除答題得分外還可得到新段位稱號積分獎勵;若未達到新的段位,只加星星,每顆星星300積分。如果輸掉了排位,不會掉星星;若兩人平分,都不加星星。

參加個人排位,答對一題100分,答錯不扣分,連續答對積分遞增。
每次答題5道,每道題時限20秒,超時自動放棄。
青銅→白銀:一顆星 稱號獎勵300積分
白銀→黃金:二顆星 稱號獎勵600積分
黃金→鉑金:三顆星 稱號獎勵1000積分
鉑金→鉆石:四顆星 稱號獎勵1500積分
鉆石→宗師:五顆星 稱號獎勵2000積分
宗師→王者:六顆星 稱號獎勵3000積分
達到宗師、王者段位的員工可獲得線下獎勵
5、團隊賽多人答題
進入團隊對戰后,可隨機匹配戰隊,(人數為2±)也可以邀請在線好友一起組隊。兩個團隊成員每人按照順序答題(他人答題時戰隊成員只看觀看,不可文字提示等),答對一題團隊每人可獲得200積分,答錯不扣分。


每次對戰10題,每道題目20秒時間為限。
最終積分高的團隊獲勝,可另外獲得1000積分;積分低的團隊失敗,無另外的積分加成。
六、總結:晟訊答題小程序優勢:

1、答題模式最全(個人答題、好友pk、排位賽、多人團隊賽)。
2、獨家java技術研發,代碼開源,便于二開。
3、獨立知識產權(軟著登記號2019SR0657453),避免版權糾紛。
4、特色功能:題庫題目支持插圖、支持批量導入。可以綁定企業微信實現內部員工使用。
需要源碼的小伙伴加微信13383012297