IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 学生选课系统项目分析-1,架构 -> 正文阅读

[Python知识库]学生选课系统项目分析-1,架构

项目信息
 角色:学校  学员  课程  讲师

 要求:
 1.创建bj,xian 2所学校
 2.创建linux python go 3个课程,linnux在bj开  go在xian开设
 3.课程包含,周期,价格 通过学校创建课程
 4.通过学校创建班级,班级关联课程,讲师
 5.创建雪学员时,选择学校 关联班级
 创建讲师角色时要关联学校
 6.提供两个角色接口
 6.1学员视图,可以注册,交学费 选择班级
 6.2讲师视图 讲师可管理自己的班级,上课时选择班级,查看班级学员列表
 6.3管理视图,创建视图,创建班级,创建课程


 7.上面的操作产生的数据都通过pickle序列化保存到文件里

 ----------------------------
 二.需求分析
    -管理视图
        -1.注册
        -2.登录
        -3.创建学校
        -4.创建课程
        -5.创建讲师

     -学员视图
        -1.注册
        -2.登录功能
        -3.选择校区
        -4.选择课程
        -5.查看分数

     -讲师视图:
        -1.登录
        -2.查看教程课程
        -3.选择教授课程
        -4.查看课程下学生
        -5.修改学生分数



  三.程序的架构设计
    -用户视图层
        -用户视图层
            -用于与用户进行交互
            -小的逻辑判断
            -core
                -src.py  主视图
                -admin.py
                -student.py
                -teacher.py
                

    -逻辑接口层
        -核心业务逻辑的处理
        -interface
            -admin_interface
            -student_interface
            -teacher_interface

    -数据处理层
        -做数据的处理,比如数据的增 删 改 查
        -db
            -db_handeler.py
            -models.py    #面向对象的所有内容体现的地方
=========================================================
选课系统总结:
    -管理员
        -注册
            1.用户在视图层(core)输入用户名和密码,交给接口层
            2.接口层调用数据层中的models.select进行校验。
            3.若不存在就创建,并将注册成功返回给视图层。

        -登录
            1.用户在视图层输入用户和密码,交给接口层
            2.接口层调用数据层中的models.select进行校验
            3.若存在,则校验密码,并将登录成功返回给视图层

        -创建学校
            1.让用户输入学校名与学校地址
            2.调用管理员创建学校接口
            3.判断学校是否存在,若存在不让创建
            4.若不存在,则调用接口层创建学校,获取管理员对象的创建学校方法保存学校
            5.将结果发挥给视图层


        -创建课程
            1.获取所有学校,并打印,让用户选择
            2.获取用户选择的学校与创建的课程,交给接口层
            3.接口层调用管理员对象中的创建课程方法,保存课程对象
            4.课程需要绑定给学校对象,最终将创建成功的结果返回给视图层


        -创建老师
            1.让用户输入老师的名称
            2.调用接口层,接口层中设置默认密码 123 ,调用数据层
            3.判断老师是否存在,不存在则调用, 管理员对象中的创建老师方法
            4.保存老师对象 并将结果返回给视图层。


    -学生
      -注册[同上]
      -登录[同上]

      -选择学校
        1.获取所有学校,让学生选择,将选择的学校传给接口层
        2.接口层判断当前学生是否选择学校
        3.若没有选择,则调用学生对象中的添加学校方法。
        4.将添加后消息返回给视图层

      -选择课程
        1.先获取当前学生所在学校的所有课程,并选择
        2.接口层将选择课程,调用数据层的添加课程方法保存。
        3.学生对象中课程列表添加该课程,设置课程分数默认为0
        4.最终将结果返回给视图层。

      -查看成绩
        1.直接调用接口层
        2.接口层调用数据层中的查看成绩方法
        3.返回成绩给视图层并打印




    -老师
        -登录[同上]

        -查看教授课程
            1.直接调用接口层,获取老师对象下课程列表数据
            2.若有则打印,没有则退出

        -选择教授课程
            1.调用接口层中选择教授课程接口,调用数据层中该课程下所有的学生返回给视图层
            2.打印所有的视频,让老师选择,若老师课程中有该课程则不让添加
            3.没有,则调用  老师对象中的  添加课程方法进行添加

        -查看课程下学生
            1.直接获取老师对象下所有的课程,选择课程
            2.从老师对象中,请用查看课程表学生方法,获取 课程对象下 所有的学生,返回给视图层
            3.视图层打印,该课程下所有的学生,并让用户选择需要修改分数的学生
            4.调用老师修改分数接口,获取老师对象,调用对象汇总的修改分数方法
            5.获取学生对象总的 score_dict 分数字典,进行修改。

        -修改学生分数






  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-12 17:27:53  更:2022-03-12 17:27:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:28:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码