项目开端
选课系统锻炼对三层结构掌握情况 并拓展练习对各个模块运用情况,对比ATM项目虽然多了几个模块,但是并没有多出来很难理解的知识!最初听完比较懵,仔细梳理了之后,逻辑并没有很复杂!
项目功能
1.本项目总共15个功能 分为三个视图部分
管理员部分(注册、登录、创建学校、创建课程、创建老师)
讲师部分(登录、查看课程、选择课程、查看分数、修改分数)
学生部分(注册、登录、选择学校、选择课程、查看分数)
项目开始前的准备
1.软件开发目录必备知识
2.创建三个视图部分的视图功能列表和接口,多出一个module.py
3.日志的代码拷贝(因这个日志代码都是公共部分且有些繁琐,故直接拷贝拿来用即可)
4.各个功能编写时的各个类创建
5.第三层结构分为两部分module.py交互db_handler.py
讲师部分功能
1.注册和登录功能
和ATM类似 只是读取数据的函数变为类 先创建管理员类,管理员类包含数据的读取和写入 读取用到固定方法classmethod 需要多出拼接路径的操作, 因需要类名为文件夹保存数据:所以掌握 类名.__name__ = 字符串类名。数据加密
2.创建学校功能
第一层需要获取学校名字,地址,第二层进行学对象获取、校验是否存在、第三层创建学校类 学校类包含名字 地址 课程列表、并绑定给管理员类、因读取和保存数据的功能各个类都需要就把这两个功能摘取出来 单都创建一个类包含此两项功能,其他类来继承这两个公共功能,第二层通过学校类对象获取学校名校验 并返回信息给第一层
3.创建课程功能
本功能需要在学校下进行 所以第一层先获取学校列表 获取学校列表接口连接第二层 第二层连接第三层创建一个获取公共列表的类功能 返回获取列表,第二层校验一下返回第一层 第一层选择学校和获取到的课程信息一起提交第二层进行学校课程创建、此时创建一个课程类 课程类包含课程名称,价格、周期、学生列表、讲师列表 并绑定给管理员类、然后第二层先校验学校类.课程列表是否包含此课程,再用管理员绑定的课程类功能创建 学校对象中课程列表添加,最后结果保存返回给第一层
4.创建老师功能
老师功能 第一层获取讲师姓名 第二层连接第三层创建讲师类 讲师类包含姓名和密码,密码可以用关键字参数代替、包含课程列表 保存数据
学生部分
1.注册登录
此部分代码和管理员部分基本相似 主要在于创建学生类 学生姓名密码 学校可以先固定None 课程列表 分数字典
2.选择学校
本功能需要先获取学校列表 和管理员创建课程前获取学校列表相似 然后选择学校 进行第二层数据处理 校验该学生是否已选择学校 没有的话就把该学校和学生类里的学校绑定
标签:功能,煎熬,周末,创建,选课,列表,学校,课程,第二层
From: https://www.cnblogs.com/xm15/p/16886059.html