C++建模实战-高考录取系统
扫描二维码
随时随地手机看文章
招生工作的第一阶段就是收集各个大学的招生计划。但是在访问大学的之前,首先需要解决一个问题,到哪里去找到这些大学呢,为此这里增加了一个类:EducationDepartment,应该叫教育厅吧。我们假设它管理这学校。
这样就通过调用EducationDepartment的getUniversity方法得到大学的清单。
也许你会说:不是有些大学是教育部直属么?那也没有关系:即使教育部,教育厅管理的大学都有,也无非就是多问几次,处理的方式也不会有太大的区别。
这种判断很重要:在变化发生时,当前的设计能挺得住么?
接下来开始收集招生计划。
对于每所大学,AdmissionOffice从手中的EnrollmentPlan克隆一个新实例,作为模板通过requestPlan方法交给大学,大学在通过setUniversity方法在计划上记入自己的信息并设定招生人数。
为 什么要克隆呢?因为现实生活中的招办应该就是通过复印(电子文档就是复制)生成空计划交给各大学填写的。从功利的角度来看,这种方式提供了一种更换计划类 型的方法。AdmissionOffice可以完全不了解EnrollmentPlan的细节就可以构建出新的EnrollmentPlan来。这实际上就是Prototype设计模式!
最后一步,通过resigerPlan方法将各大学记入完了的招生计划登记入册,统一管理。
看到的只是设计的结果,但是得到这个结果的过程中考虑的点可能要远大于你看到的。
多学,多练,多问问为什么.