选课系统
当你看到这的时候,恭喜你,Python重要的基础课程已经学习完毕。而面向对象部分则是基础课程中的一个重要转折点。从面向对象开始,你要试着从面向对象的思想出发,来编写程序,尤其是将来开发一些功能复杂的系统。而本章的系统则是精心设计而成的。我们学过的内容都能在该系统中体现。所以,要用心完成本系统。
在完成系统的时候,请务必回顾之前章节所学,让我们在实现系统的过程中更加得心应手。
7.1 功能概述
“学生选课系统”,顾名思义,本系统必须实现的需求就是选课。
7.2 需求分析
既然我们主要实现的功能是“选课”,那么我们要实现的核心逻辑都要围着选课展开。
7.2.1 角色设计
首先我们来思考:学生选课,那么学生由谁来创建?课程由谁来创建?学生能否创建课程?很明显,从我们现实角度来说,学生只能选择课程而不能创建课程!那么,课程应该由那个“谁”来创建。而学生也不能是凭空而来的。这里我们也让那个“谁”来创建学生。所以,我们在这里可以确定三个角色:
可以选择课程的——学生
可供学生选择的——课程
可以创建学生和课程的那个“谁”——管理员
7.2.2 功能设计
这里考虑到大家都是初学者,所以,尽量的选择一些简单的功能实现。
登录,管理员和学生都可以登录,并且登录后可以自动区分身份。
选课,学生可以自由的浏览课程信息,并挑选课程。
信息的创建,无论是学生信息还是课程信息,或是其他的信息,都由管理员创建