选课系统
选课系统
一 需求分析
# 项目需求如下 ''' 角色:学校、学生、课程、讲师 要求: 1. 创建北京、上海 2 所学校 2. 创建linux , python , go 3个课程 , linux\py在北京开,go在上海开 3. 管理员创建学校 ,老师,课程 4. 学校包含学校名称,地址等属性 5. 学生注册登录后,可以选择学校,选择课程,查看成绩 6. 学生只能选择一所学校,从校区中选择一门课程,课程绑定给学生。 7. 老师登录后,可以查看教授课程,选择想要教授的课程,查看课程下的学生,修改学生成绩等 最终分为以下视图和功能: 学生视图 1、注册 2、登录 3、选择校区 4、选择课程 5、查看成绩 老师视图 1、登录 2、查看教授课程 3、选择教授课程 4、查看课程下学生 5、修改学生成绩 管理视图,创建讲师, 创建班级,创建课程 1、注册 2、登录 3、创建学校 4、创建老师 5、创建课程 '''
二 程序的架构设计
''' 程序的架构一共分为三层: - 1.用户视图层 - 2.接口层 - 3.数据层 - models ---> 用于把数据封装在对象中 - db_handler ---> 把对象通过pickle的形式进行存储 '''
三 程序的目录结构
''' conf放置配置信息setting core:放置用户层视图 db:数据操作层py文件和以文件形式保存的数据,通过pickle把数据序列化保存到文件里。 interface:放置接口相关信息,有管理员接口,老师接口,学校接口,学生接口和公共接口 lib:放置公共方法 用户功能层:src下: src:主视图, admin:管理员视图, student:学生视图 teacher:老师视图 接口层:interface下: admin_interface管理员的接口 common_interface公共的接口 school_interface学校的接口 student_interface学生的接口 teacher_interface老师的接口 数据层:db目录下: db_handler,文件操作相关的方法 models:各种类及类方法的定义 其它目录:admin,course,school,student,teacher是自动生成的目录,用来存放数据信息 start.py启动文件 总共分三个视图: 管理员视图: def admin_register(): pass def admin_login(): pass def creat_school(): pass def creat_teacher(): pass def creat_course(): pass 老师视图: def teacher_login(): pass def check_course(): pass def choose_course(): pass def check_student(): pass def modify_score(): pass 学生视图: def student_register(): pass def student_login(): pass def choose_school(): pass def choose_course(): pass def check_score(): pass '''