第二章 范例项目:在线考试系统

为了能够全面展示专业软件开发中用到的思想、范式、类库、框架以及工具,我在本书中完整实现一个在线考试系统。该系统将实现为SaaS云计算的形式,并允许通过浏览器和手机使用。

之所以选择在线考试作为范例,是由于以下的原因:

  • 相信大家都是过五关斩六将在来到这里,每个人都经受过一场又一场暴风雨般的考试的洗礼,因此对考试这个业务领域已经熟悉务必,不必费心做更深入的钻研。
  • 试题有多种形式,包括单选题、多选题、填空题、选择题、论述题等等,每种试题的结构形式不一样,评分方式也不一样。有客观题,有主观题;不同的用户单位可能选择不同的评分标准,例如可能单位A的多选题是全对得分,不全对得0分;而单位B是多选题按正确选项的比例得部分或全部分数等。这正是面向对象的继承、封装、多态以及各种设计模式可以发挥作用的地方。这个系统可以充分说明面向对象OO和领域驱动设计DDD相对于面向数据库的增删改查(反)范式的优势。
  • 这个系统的复杂度算是中等规模,既不会简单到基本无用的程度,也不会复杂到难以理解的程度。
  • 也许你可以直接用得上这个系统呢。
Copyright © yyang.io 2016 all right reserved,powered by Gitbook该文件修订时间: 2016-05-19 00:24:57