文章主旨
大家好,今天给大家分享的是,我个人开发的一款答题小程序。面向的用户群体是程序员,内容是我们常见的一些面试题。下面大致介绍一下,从构思、技术选项、功能分析、设计与开发到部署上线的一些环节。
开发背景
先从主观背景说吧,正是因为有这样的一个想法,才开始去各大平台找类似的程序,没有找到才打算个人开发。
主观背景
-
一直以来都想拥有一款自己的产品,不管是赚钱与否。 -
有一个产品梦,但是不知道做什么好。中间自己折腾过很多的小应用出来,有电商的、旅游的、记账的、视频类的等等。做到最后都不是自己想要的一个应用。在一次换工作的经历中,发现很多的面试题自己平常都遇到过,回过头来再去找这些面试题,完全找不到了(毕竟都是来自各种平台,很零碎)。便产生了一种想法,能够把这些面试题给汇总起来,并做一些归类,以后要复习或者分享给别人时,也比较方便。 -
有这个想法之后,就去网上找了很多答题类的开源项目。与其说是开源,不如说都是一种营销手段,里面的程序根本无法运行或者是缺这缺那的,你想要的话,一句话要花钱。或者是一些小程序开发者利用这种方式导流。
客观背景
-
上面也提到了,市面上根本无法找到一个适用的开源程序,进行二次开发或者直接使用。 -
商业化的答题产品也非常多,但是收费贵、功能固定、无法定制化。
开发流程
需求分析
既然找不到合适的开源项目来使用,那只能自己动手实现。首先要做的就是需求分析,经过一周的思考,把功能大致罗列了一些,如下图: 前期主要是实现核心功能,至于其他的功能暂时没有规划,等后期迭代更新。一个产品不可能一开始就做的非常完美。
技术选型
-
考虑到项目要快速开发完成并上线,选择了PHP。但是又要兼顾到性能方面,于是后端的技术框架使用hyperf实现。 -
前期是为了赶工期,并且后面也会迭代更新,便采用前后端分离模式。以后页面全换,至少接口不会发生太大变化,可以实现复用。于是管理端使用的element实现。 -
关于数据库依用的是主流的MySQL,nosql方面使用的是Redis,日志用的是MongoDB,服务器就是centos7,web服务是Nginx。就这样,技术定下来了,就直接开干。
开发周期
开始时间差不多是2021年的12月份,基本都是下班回家和周末抽时间搞,几乎每天晚上都的搞到1、2点钟。到月底的时间上线了一个小版本。后面的时间,就是一点一点的迭代。
其中遇到的最大困难,应该就是前端。毕竟自己是写后端的,开始写前端总有那么一点心有余力不足的感觉。不过还好,总算是完成并上线了。
版本计划
内容规划
-
现目前,系统已经有个500来道试题。后面计划,把一些试题的答案给完善,并且不断的录入新的试题。 -
联合一些大厂的朋友,把一些经典、常见的一些面试题做一个整理,给录入到系统。 -
如果你比较感兴趣,也乐于分享的,可以把自己总结的面试题分享给我。
功能规划
-
现目前的所有试题,对用户来说都是免费开放的。后面在此基础上,做成真正的答题模式,同时用户也可以自由选择。 -
提供开放平台接口,主要是考虑到一些开发者,想自己写前端页面。
功能截图
下面是部分功能截图,需要体验的大家可以直接扫码。
管理端
随便截取的几张关于试题的页面。如果想使用或者了解更多的也可以联系我。
用户端
用户端就截几张关于试题的页面。
联系方式
|