选课系统(面向对象编程练习)--代码解析
2021/10/6 11:10:58
本文主要是介绍选课系统(面向对象编程练习)--代码解析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
这个简单的任务分析大概了解一下,清楚我们要实现的功能就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 ''' 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''' #功能字典 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''' 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''' 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''' '''启动程序入口''' 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()
这样程序结构基本做完了,接下来就是一步一步去实现功能了
下面的程序,是整个选课系统的完整代码:学习面向对象编程建议新手都要敲至少两次,总结其中的每一个知识点,这样才能把别别人的技术转化为自己的技术储备
这篇关于选课系统(面向对象编程练习)--代码解析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23线下车企门店如何实现线上线下融合?
- 2024-12-23鸿蒙Next ArkTS编程规范总结
- 2024-12-23物流团队冬至高效运转,哪款办公软件可助力风险评估?
- 2024-12-23优化库存,提升效率:医药企业如何借助看板软件实现仓库智能化
- 2024-12-23项目管理零负担!轻量化看板工具如何助力团队协作
- 2024-12-23电商活动复盘,为何是团队成长的核心环节?
- 2024-12-23鸿蒙Next ArkTS高性能编程实战
- 2024-12-23数据驱动:电商复盘从基础到进阶!
- 2024-12-23从数据到客户:跨境电商如何通过销售跟踪工具提升营销精准度?
- 2024-12-23汽车4S店运营效率提升的核心工具