Bootstrap

【python面向对象】学生管理系统


前言

通过之前学的封装,现在做一个信息管理系统。


软件设计流程

![在这里插入图片描述](https://img-blog.csdnimg.cn/4777dd65309f484cb76d4abc972a1b38.png

一、系统需求

实现对学生信息的增加、删除、修改和查询。

二、项目分析

界面可能使用控制台,也可能使用Web等等。

  1. 识别对象:
  • 界面视图类
  • 逻辑控制类
  • 数据模型类
  1. 分配职责:
  • 界面视图类:负责处理界面逻辑,比如显示菜单,获取输入学生信息。
  • 逻辑控制类:负责存储学生信息,处理业务逻辑。比如添加学生。
  • 数据模型类:定义需要处理的数据类型。比如学生信息。比如学生信息。
  1. 建立交互。
    界面视图对象<---->数据模型对象<---->逻辑控制对象
    在这里插入图片描述
    在这里插入图片描述

三、项目设计

  • 数据模型类:StudentModel
    –数据:编号id,姓名name,年龄age,成绩score
  • 逻辑控制类:StudentManagerController
    –数据:学生列表__stu .list
    –行为:获取列表 stu_list,添加学生add_student,删除学生remove_student,修改学生update_student
  • 界面视图类:StudentManagerView
    –数据:逻辑控制对象__manager.
    –行为:显示菜单__display_menu,选择菜单项__select_menu,输入学生__input_student,输出学生__output students,根据编号删除学生信息__delete_student,根据编号修改学生信息__modify_student

四、项目计划

  1. 完成数据模型类StudentModel
  2. 创建逻辑控制类StudentManagerController
  3. 完成数据:学生列表__stu .list
  4. 行为:获取列表 stu_list
  5. 添加学生add_student
  6. 根据编号删除学生delete_student
  7. 根据编号修改学生update_student
  8. 创建界面视图类StudentManagerView
  9. 完成数据:逻辑控制对象__manager.
  10. 显示菜单__display_menu
  11. 选择菜单项__select_menu
  12. 输入学生__input_student
  13. 输出学生__output students
  14. 根据编号删除学生信息__delete_student
  15. 根据编号修改学生信息__modify_student

五、项目编码

  1. 完成数据模型类StudentModel
class StudentModel:
    """
        学生模型
    """
    def __init__(self,name="",age=0,score=0,id=0):
        """
            创建学生对象
        :param name::姓名,str类型
        :param age:年龄,int类型
        :param score:成绩,float类型
        :param id: 编号(该学生对象的唯一标识)
        """
        self.name = name
        self.age  =age
        self.score = score
        self.id = id
  1. 创建逻辑控制类StudentManagerController
  2. 完成数据:学生列表__stu .list
  3. 行为:获取列表 stu_list
class StudentManagerController:
   
;