「请教」急需帮助的在线考试系统的设计与开发毕设 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
cool4zbl

「请教」急需帮助的在线考试系统的设计与开发毕设

  •  
  •   cool4zbl 2014 年 10 月 23 日 5297 次点击
    这是一个创建于 4203 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是这样的,楼主正在努力自学前端技术,准备找工作。
    本科学的电子信息工程,但是相比互联网的话,对电子这块兴趣不大,所以毕设选了这么个奇葩题
    「XX课程在线考试系统的设计与开发」。
    老师的要求:
    1. 设计并开发出一套电路分析基础课程考试系统,要求集练习、测试自动化于一体。
    2. 具有教学题库管理、考题自动生成、在线测试、自动化评分、成绩登记等功能。
    感觉很全端的样子。其实是学校那个课程组想更新他们的在线测评,顺便出了这么个题目,我看和我想找的工作挺接近的,可以认真做做增长经验。当然,和四年学的一毛钱关系都没有。
    因为那些老师也是搞电子的,自己对这个也不是很懂,所以我只能自己努力,来V2EX上请教了。

    楼主现在只懂HTML&CSS, Javascript算是熟悉,但是还在努力深入学习中。因为自己搭过网站,算是了解Nginx的服务器端配置。数据库也不太懂,但是老师指明了一定要用数据库,因为要导入他们课程的考试题库。
    打算前端就使用 jQuery + Bootstrap,但是后端不太懂。
    所以想请教各位大神:
    1. 这个在线考试系统如何架构? 可以把它做成一个Web App吗?
    2. 在网上搜了下「在线考试系统」,一般都是很丑陋的界面,然后用的ASP.NET,或者JSP开发。
    因为用的OS X系统,不太想接触.NET和JSP。所以我可以用Node.js写后端吗?或者推荐某些Python框架?对Python的学习还是不排斥的。 实在不行就只能从零开始学PHP了。
    3. 数据库是使用MySQL还是现在有点火的MongoDB Redis?哪个比较好上手?
    4. 比较喜欢现在的新鲜的开源框架。但是最好还是要兼容到IE7。

    总之就是不使用ASP.NET、JSP和PHP,只用JS、Python以及数据库来开发这个在线考试系统难度大吗?有可行度吗?
    大概有半年的时间做这个东西,还是挺想自己认真把它做出来的。

    请各位指点,感激不尽。
    43 条回复    2014-10-24 10:55:05 +08:00
    cool4zbl
        1
    cool4zbl  
    OP
       2014 年 10 月 23 日
    是我写的太多太嗦了吗?
    大家能不能给点建议?
    panlilu
        2
    panlilu  
       2014 年 10 月 23 日   1
    1.想做成 Web App 最好借助一些js框架,比如 Angular、backbone 之类的。如果是这样架构就是后端提供 Api 前端 Ajax 调用,然后后端调用数据库。根据你的需求,采用 Node+MongoDB 是比较符合的。
    2.当然可以用 Node.js,Python 也很好当然其实你学习能力还可以的话应该试试 ruby。
    3.生产环境应该用 Mysql。不过你既然是做着当毕设的没有 SQL 基础从学习难度上说应该用 MongoDB。
    4.兼容 IE7?Bootstrap 都有点呛啊=、=
    vilison
        3
    vilison  
       2014 年 10 月 23 日
    用js、python 都不错,至于难度吧,看个人能力了,这两个写还是挺爽的
    cool4zbl
        4
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @panlilu 感谢回复。
    感觉还是给自己挖了个坑哇。
    Angular backbone都是好大的库 o(□)o。
    可能差不多就是后端搭个框架然后提供API,然后调用数据库。
    为什么建议试试Ruby呢?更适合这个项目?
    其实这个系统能开发好最终还是要上线的,不过我还是先试试MongoDB吧。
    cool4zbl
        5
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @panlilu 还有PostgreSQL适合吗?
    Bootstrap兼容性居然如此低啊。。
    cool4zbl
        6
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @vilison 感谢回复。
    能不能更具体点的呢?
    Mirana
        7
    Mirana  
       2014 年 10 月 23 日
    根据你自己的技能,nodejs+mongdb 是最合适的。。
    frankzeng
        8
    frankzeng  
       2014 年 10 月 23 日
    你第一次做还是用php+mysql吧,可以参考的东西比较多,别把坑挖太深,不然自己出不来
    jiongjionger
        9
    jiongjionger  
       2014 年 10 月 23 日
    就只会HTML+CSS和JS。
    个人感觉Jquery + 扣个模板,在此基础上改改 + PHP+MYSQL是最快的。
    半年时间够你学PHP+MYSQL加上做的时间了。当然PHP你可以换成python或者ruby。MYSQL就别换了,关系型都没玩过就上NOSQL太可怕。那坑太大,而且也没必要。
    cool4zbl
        10
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @frankzeng 感谢回复。但是怎么觉得用PHP+MYSQL才是坑呢,因为两者基础均为0...
    cool4zbl
        11
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @jiongjionger 感谢回复。
    那我再考虑下MySQL。。
    panlilu
        12
    panlilu  
       2014 年 10 月 23 日
    Postgres 挺好的,但是国内感觉可以参考的东西不太多,要去啃英文的文档。
    另外 PHP+MYSQL 不是坑,经过生产环境考验的,上手也很容易;只是现在不够潮而已。
    cool4zbl
        13
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @panlilu 额,听说「nosql的架构比较容易实现复杂的文档结构,不用费心去映射成关系数据库结构」,是不是更适应这个在线考试系统的题库呢。
    blueandhack
        14
    blueandhack  
       2014 年 10 月 23 日
    NodeJS+MongoDB+Bootstrap+jQuery
    轻松实现
    首先设计前端,然后规划一下如何做题出题,然后设计一下路由,哪些路径用来获取题目,哪些用来提交,最后着手写后端具体功能,用jQuery调取Json数据,Ajax之类的实现提交,无刷新出分,等等。
    很简单,规划好就好写了。
    frankzeng
        15
    frankzeng  
       2014 年 10 月 23 日
    @cool4zbl 你别管那些给你推荐高大上的东西,你是做练习,不是耍花枪,你要说你会MongoDB,但不会mysql,这说出去不是笑掉牙,练习就必须从最基础做起。
    royzheng
        16
    royzheng  
       2014 年 10 月 23 日
    php+mysql吧 资料最多了 你是要实用可用相对按你实力能在这点时间内做出的话
    或者你用nojs+mysql也是个可以的选择 资料会少点 但好处是你对js也可以练
    你连关系型数据库都不懂 搞什么nosql,有点莫名其妙的
    用jquery ui什么的也能照顾到兼容性 但仅供参考
    Comdex
        17
    Comdex  
       2014 年 10 月 23 日
    用golang,哈哈
    cool4zbl
        18
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @Comdex 原因呢?
    skyitachi
        19
    skyitachi  
       2014 年 10 月 23 日
    既然你想找前端的工作,node+mongodb+jquery+bootstrap,完全可以,而且半年时间肯定够,加油
    cool4zbl
        20
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @Mirana
    @blueandhack
    @frankzeng
    @royzheng
    先感谢大家回复。
    cool4zbl
        21
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @skyitachi 恩,谢谢。我本来也是考虑到以后还是要找工作,能用现成的知识练练手最好,不要再继续挖坑。
    cool4zbl
        22
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @blueandhack 谢谢,听起来还比较可取。
    Node.js要用框架吗?还有兼容性怎么样呢?
    wgdong1001
        23
    wgdong1001  
       2014 年 10 月 23 日
    看看ruby on rails ,后端采用这个最迅速
    jox
        24
    jox  
       2014 年 10 月 23 日
    lz可千万不要以为.NET和JSP开发出来的应用就一定难看啊,还有半年时间,却要做这种东西,还想做好,我只能说祝你好运了
    cool4zbl
        25
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @jox 恩,后来发现是只是使用.NET和JSP的有些人不会产品设计而已。
    想做好很难吗?感觉半年时间挺长的啊。
    jox
        26
    jox  
       2014 年 10 月 23 日
    @cool4zbl 反正你试试看吧,我觉得够呛。你也别管什么这个那个的,你不是会点python什么的吗,就用那个吧,省得其他的还得重新学,毕设反正都是对付的,你可千万不要以为你做出来他们就会用啊,这种事情在网络论坛上问不出个所以然来,你要是在做的过程中遇到点啥问题,过来问还行,这样的问题让人怎么回答,你也别想着啥好看啥设计的,能弄出来就不错了。什么数据库框架之类的,你身边就一个懂一点儿的人都没有吗?你既然对这个感兴趣,没有计算机系的朋友吗?如果都没有的话,这就很蛋疼了。python的web框架特么有一大坨,A说这个好,B说那个好,其实都是扯淡的,你随便搜索一下,把每个的教程都看一遍,然后觉得哪个不错就用哪个,然后问问题也别来这里问,去python相关的网站问去,数据库软件也有一些,什么mysql,postgres的,你去看文档,觉得哪个不错就用哪个,最好身边朋友有会的那就最好,看那个朋友会啥你就用啥,这样遇到问题他好帮你。

    你一学电子的,既然对电子不感兴趣,怎么不早点开始学习相关的知识,你现在的状态在我看来就是毛都不懂,还喜欢追新技术,很难
    Comdex
        27
    Comdex  
       2014 年 10 月 23 日
    @cool4zbl 开发的web应用跨平台,部署简单,开发和学习效率高
    11
        28
    11  
       2014 年 10 月 23 日
    我想知道「考题自动生成」你怎么搞
    cool4zbl
        29
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @jox 额。我在其他技术论坛上也是问了的,也正在一边看文档。
    如果能有好建议当然是好的啊。
    谢谢你的提醒。之前是在准备各种出国考试,以为能做学术,但是出了点意外现在出去是不太可能了。只是对这方面的东西自己之前或多或少在自学下,数据库框架什么确实旁边人都不懂,认识的计算机系朋友都不喜欢计算机,要是有那样略大神的朋友,我想我也用不着写这么多字来这问了。
    所以我也觉得我蛮奇葩的。
    是相比于互联网,对电子兴趣不大。
    jox
        30
    jox  
       2014 年 10 月 23 日
    lz加油吧,你先花一个星期的时间把该看的文档和相关的基础知识补一下,然后你心里大概就有谱了。要我说你这毕设就对付一下,你努力自学前端技术想找前端开发的工作那不如就多准备那方面的,额,其实前端也是不容易的

    你要实现的这些功能真的不简单,不说其他的,光说自动评分这一项,除非都是选择题,如果有填空的话就够麻烦的了,你怎么判断考生提交的答案是否正确?比如正确答案是ABC,但是A B C,A B C也可以认为是对的,这就设计到字符串处理的问题,字符串处理是很困难的
    qushiba
        31
    qushiba  
       2014 年 10 月 23 日
    刚做完我的毕设,跟你这个差不多级别的。我用的jQuery+PHP+MYSQL, 数据交换用的JSON。我觉得没必要搞那么复杂的。另外服务器那边推荐装个Wamp之类的,就足够了,省的折腾。

    这个开发中最难的部分还是JSON的数据处理交换这些事,还有处理字符串的问题。然后放开手大胆去做,时间肯定够的。边学边做,别一上来就先啃大部头,太浪费时间。有问题多上stackflow问
    cool4zbl
        32
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @qushiba 谢谢回复。
    Wamp...好吧,之前折腾过MAMP,后来发现还是比较喜欢终端,接触到了Nginx后就忘记它了。
    我也觉得核心部分应该是JSON数据交换这块。
    只是想找到自己顺手又喜欢的框架来做还是需要多看看。
    cool4zbl
        33
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @jox 恩,感觉我在挖一个坑两个坑,然后还在决定等下跳哪个坑。。o(□)o
    那些需求如果不能完美达到还是可以稍微调整的。
    cool4zbl
        34
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @11 lz表示现在还不知道。
    lygmqkl
        35
    lygmqkl  
       2014 年 10 月 23 日
    jQuery + php + mysql are enough for u, use ajax for request, and use json for data transfer.

    that's all u need, for front-end use bootstrap for css.

    that's all, good luck.
    jox
        36
    jox  
       2014 年 10 月 23 日
    原来这个网站的用户还有外国人。。。。。
    cool4zbl
        37
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @jox 我也感到挺神奇。。
    qushiba
        38
    qushiba  
       2014 年 10 月 23 日
    @cool4zbl 我的毕设就是我给自己挖的坑,当时jQuery这些我还不熟,现学,花了3个月做下来其实没那么的难,就是有时候一些小问题比较抓狂(新人嘛。。。),反正不管是什么方面的,先抓一堆例子,比较下找找灵感,理清思路就好了
    cool4zbl
        39
    cool4zbl  
    OP
       2014 年 10 月 23 日
    @qushiba 谢谢。我要学的也还有很多。感觉以后可以多交流。:)
    qushiba
        40
    qushiba  
       2014 年 10 月 23 日
    @cool4zbl no problem XD
    jucelin
        41
    jucelin  
       2014 年 10 月 24 日 via Android
    我也在写此类系统,但我的是企业内部系统,内部个性化比较明显。目前在线考试部分OK,在线教学还在规划。
    cool4zbl
        42
    cool4zbl  
    OP
       2014 年 10 月 24 日
    @jucelin 用的PHP+MYSQL ?
    willwen
        43
    willwen  
       2014 年 10 月 24 日 via iPhone
    用你最熟悉的技,就是最好的。Node.js+Postgres,都可以我。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2816 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 64ms UTC 09:40 LAX 02:40 JFK 05:40
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86