• 在线知识竞答小程序更新记录


    知识竞答小程序更新记录

    ~~

    其实我很少在社区写小程序的更新记录,但是今天列外,今天下午解决了一个伴随答题小程序半年的问题

    即:答题最短用时更新问题

    本文背景

    本文主要介绍了答题活动小程序最短用时的场景,具体如何产生这个问题以及如何修复的。

    本文内容

    作为一个答题活动小程序,离不开四个核心模块:

    1)首页

    2)规则介绍页

    3)答题模块,包含答题过程、答题结果、答题解析

    4)答题排名

    现在我截图一个答题活动规则,大家可能感受更直接


     

    在上面场景中,我们提取下关键信息

    1)按得分,从高到低排名;

    2)在得分相同的情况,按答题用时,从短到长排名;

    在我之前的答题小程序存在的问题就是:

    当得分相同时,我并没有再继续更新最终的个人有效得分用时,如果本次答题用时比之前的用时短,便会存在问题

    解决方案

    在讲具体方案是,我先描述下当前的方案

    用户小王打开小程序,来到下面界面,我会记录下目前用户的最高得分,比如最多可以参加三次答题,当前最高得分为80分,如果用户答题结束后,用本次答题得分,跟当前最高得分进行比较,如果本次得分>当前最高得分,那么更新用户有效答题记录

    在之前的逻辑是没有考虑用时数据的更新的


     

    目前解决方案

    在用户进入上述界面时,记录下当前最高得分,以及最高得分的最短用时,这里有个小技巧我分析下

    就是在查询记录的时候,按照得分从低到高排序,用时从长到短排序,

    取最高得分是采用

    if(item.num >= Max) {

    Max = item.num; time = item.time;

    }

    这样便拿到正确的数据

    在用户答题结束时,增加对答题得分相同的处理逻辑,

    相关界面

    答题排名界面如下所示


     

    本文总结

    本文主要分析了之前答题活动小程序,答题用时问题产生的根源,以及如何解决答题最短用时的,通过这次回顾,让我对这个问题有了更深的印象,在日后的答题小程序开发中,可以更好的规避此类问题的出现。

  • 相关阅读:
    数据集市
    大数据下的企业数据仓库建设
    大数据项目--准备
    ETL利器Kettle实战应用解析系列三 【ETL后台进程执行配置方式】
    ETL利器Kettle实战应用解析系列二 【应用场景和实战DEMO下载】
    ETL利器Kettle实战应用解析系列一【Kettle使用介绍】
    [Leetcode Weekly Contest]202
    [Leetcode Weekly Contest]200
    [Leetcode Weekly Contest]196
    [Leetcode Weekly Contest]195
  • 原文地址:https://www.cnblogs.com/MyFlora/p/14033999.html
Copyright © 2020-2023  润新知