• 选课系统


    选课系统

    一 需求分析

    # 项目需求如下
    '''
    角色:学校、学生、课程、讲师
    要求:
      1. 创建北京、上海 2 所学校
      2. 创建linux , python , go 3个课程 , linuxpy在北京开,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
    '''
  • 相关阅读:
    影响历史进程的三只苹果
    C语言实现的RSA算法程序(使用GMP)
    C++实现的大整数分解Pollard's rho算法程序
    Java实现的大整数分解Pollard's rho算法程序
    素性测试算法
    素性测试AKS算法程序
    C++实现的Miller-Rabin素性测试程序
    为什么天朝互联网的三巨头是BAT
    KMP模式匹配算法程序(Python,C++,C)
    I00014 汉若塔问题的C++程序
  • 原文地址:https://www.cnblogs.com/kermitjam/p/11356270.html
Copyright © 2020-2023  润新知