湖大19年结对项目-项目总结

结对编程项目总结

一、项目要求

       1.在个人项目的基础上,将个人项目优化为带有UI的界面,并从生成试卷的模式修改为做试卷的模式,做完后要生成相应的分数。

 

二、实现过程

       通过nodejs实现后端的搭建,并将项目做成网页端的形式。

       1.首先是对个人项目的复用,这里生成题目的代码依旧使用的是个人项目中的工程代码,其次登录界面以及进入网页的界面没有很大的修改,依旧使用源程序的代码。

       2.其次是项目的实现。

        1)刚开始也是最耗时的部分就是对生成题目的求解,幸运的是js有自带的eval函数,它会自动运行传入的字符串,也就是说这里我们不需要对小学的题目进行多余的求解,剩下初中和高中的题目。初中的题目我们使用字符串的搜索将平方和开跟号的字符串进行匹配并将其转换为eval函数可以识别的模式,也就是Math.sqrt()和Math.pow()函数,这里涉及到字符串的拼接,考虑到字符串并不是简单的替换,所以我又自己实现了字符串的拼接函数,通过测试成功实现了初中部分的计算。最后便是高中部分的计算,高中的部分显而易见比初中的要复杂,不仅在字符串的处理上复杂,而且字符串本身也有更多的可能性,所以这里有大量的分类讨论的过程,历经4天的时间,终于将高中的部分得以实现。

          2) 题目的生成界面,考虑到试卷做题者方便检查回顾题目,所以我们将题目放到一张页面,并在做完题目以后可以看到所有题目的答案以及自己的正确与否。如图一图二。

 

图一试卷作答界面

图二试卷结果展示界面

          3)其次是对密码的处理,通过正则表表达式来计算出大小写字母和数字数量,来确定密码的输入是否符合要求。

          4)最后是登录短信的验证,在阿里云申请的免费短信很好用,而且阿里云还给了使用的demo案例,直接使用就好,所以这里就不在多赘述。验证码效果见图三。

 

  图三验证码的接收

三、遇到的困难

       1.题目的运算上解决了很久,好在最后还是解决了。

  2.网页的渲染是刷新式的,用户输入密码错误就需要重新填写。

四、总结

       通过结对项目,学习了更多的知识,同时学会了如何同bug平静的相处,强大了自己的心灵。

posted @ 2019-09-28 18:13  张雄爱小可乐  阅读(90)  评论(0编辑  收藏  举报