luoyegeishudeliuyan

这个简单的任务分析大概了解一下,清楚我们要实现的功能就ok

    \'\'\'

需求分析(课程与班级合为一体)

-管理员视图
    1、注册
    2、登录
    3、创建学校
    4、创建课程(选择学校)
    5、创建讲师
-学员视图
    1、登录
    2、注册
    3、选择校区
    4、选择课程(线选择校区)
        课程也选择学生,双向绑定
    5、查看分数
-讲师视图
    1、登录
    2、查看教授课程
    3、选择教授课程
    4、查看课程学生
    5、修改学生分数

程序的架构设计

-三层架构
    -用户视图层
        -用户交互
        -做一些小的逻辑判断
        -core
            -src
    逻辑接口层
        -核心业务逻辑
        -db
            -dbhandler
                student_interface
                tercher_interface
                anmin_interface
    数据处理层           
        -数据的处理,增、删、改、查
        pickle--序列化--保存对象

测试

上线

    \'\'\'

以上内容搞定我们就可以去设计我们的目录结构了

conf--配置文件

core--视图层

db--数据处理

interface--接口层

lib--common--存放程序的公共方法

start.py--程序启动入口

 

接下来写视图层的代码、可以理解为给用户看的软件菜单

视图层(src)--管理员视图(admin)、学生视图(student)、老师视图(teacher)、

\'\'\'src.py \'\'\'
1
from core import admin 2 from core import student 3 from core import teacher 4 5 \'\'\'创建功能字典\'\'\' 6 func_dict={ 7 \'1\':admin.admin_view, 8 \'2\':student.student_view, 9 \'3\':teacher.teacher_view, 10 } 11 12 def run(): 13 while True: 14 print(\'欢迎来到选课系统\'.center(32, \'*\')) 15 print(\'\'\' 16 1、管理员功能 17 2、学生功能 18 3、老师功能 19 \'\'\') 20 choice = input(\'请输入功能编号:退出请按【q】\').strip() 21 if choice == \'q\' or choice == \'Q\': 22 break 23 if choice not in func_dict: 24 print(\'输入错误,请重新输入:\') 25 else: 26 func_dict[choice]()

管理员视图

 \'\'\'admin.py\'\'\'

1
#功能字典 2 func_dict={ 3 \'1\': register, 4 \'2\': login, 5 \'3\': create_school, 6 \'4\': create_course, 7 \'5\': create_teacher, 8 } 9 10 #管理员视图内容 11 def admin_view(): 12 while True: 13 print(\'欢迎来到管理员页面\'.center(32, \'*\')) 14 print(\'\'\' 15 1、注册 16 2、登录 17 3、创建学校 18 4、创建课程(选择学校) 19 5、创建讲师 20 \'\'\') 21 choice = input(\'请输入功能编号:\').strip() 22 if choice == \'q\' or choice == \'Q\': 23 break 24 if choice not in func_dict: 25 print(\'输入错误,请重新输入:\') 26 else: 27 func_dict[choice]()

学生视图

 \'\'\'student.py\'\'\'

1
func_dict={ 2 \'1\': register, 3 \'2\': login, 4 \'3\': choice_school, 5 \'4\': choice_course, 6 } 7 8 def student_view(): 9 while True: 10 print(\'欢迎来到学生页面\'.center(32,\'*\')) 11 print(\'\'\' 12 1、登录 13 2、注册 14 3、选择校区 15 4、选择课程(线选择校区) 16 \'\'\') 17 choice = input(\'请输入功能编号:\').strip() 18 if choice == \'q\' or choice == \'Q\': 19 break 20 if choice not in func_dict: 21 print(\'输入错误,请重新输入:\') 22 else: 23 func_dict[choice]()

老师视图

\'\'\'student.py\'\'\' 

1
func_dict={ 2 \'1\': login, 3 \'2\': check_course, 4 \'3\': choose_course, 5 \'4\': check_student, 6 \'5\': change_score 7 } 8 9 def teacher_view(): 10 while True: 11 print(\'欢迎来到老师页面\'.center(32, \'*\')) 12 print(\'\'\' 13 1、登录 14 2、查看教授课程 15 3、选择教授课程 16 4、查看课程学生 17 5、修改学生分数 18 \'\'\') 19 choice = input(\'请输入功能编号:\').strip() 20 if choice == \'q\' or choice == \'Q\': 21 break 22 if choice not in func_dict: 23 print(\'输入错误,请重新输入:\') 24 else: 25 func_dict[choice]()

程序启动

 \'\'\'start.py\'\'\'

1
\'\'\'启动程序入口\'\'\' 2 3 import os, sys 4 sys.path.append(os.path.dirname(__file__)) 5 6 from core import src 7 8 9 if __name__ == \'__main__\': 10 src.run()

 

这样程序结构基本做完了,接下来就是一步一步去实现功能了

下面的程序,是整个选课系统的完整代码:学习面向对象编程建议新手都要敲至少两次,总结其中的每一个知识点,这样才能把别别人的技术转化为自己的技术储备

 

分类:

技术点:

相关文章: