《面向对象程序设计》课程设计任务及指导书.docVIP

《面向对象程序设计》课程设计任务及指导书.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《面向对象程序设计》课程设计任务及指导书.doc

《面向对象程序设计》 课程设计 任务与指导书 绍兴文理学院计算机系 《面向对象程序设计》课程设计指导书 设计任务与目的 《》是一门实践性较强的软件基础课程, 第2-3周 详细设计、编写程序、调试分析、准备测试数据等? 第4周 完成课程设计1,撰写相应报告 第5周 明确课题二要求,学习基本的windows Forms程序设计基础知识,掌握基本的windows绘图知识 第6-7周 逐步添加并完善各类,完成一个功能较为完整的游戏类程序 第8-9周 完成报告,参加答辩 备注: 指导教师:戴振中 上机地点:理工楼303(理论课地点另定) 周二(2-9周)下午1:30~4:30 考核 课程设计的成绩分为:优秀、良好、中等、及格,不及格五个等级,不及格者不得取得相应学分。总成绩=平时成绩*30%+答辩*40%+设计报告*30% 课题一.简单教学管理系统 一、问题描述 作为一个实用的教务系统,必须能管理教学过程中的各个环节(课程设置、选课和成绩登录等),并且协调各方面的人员(系统管理员、教师、学生等),本次设计以此为背景,实现一个简单的信息管理系统来模拟教务管理系统。 二、基本要求 提供控制台的图形界面,允许用户以3种不同的身份登陆教务系统,使用菜单选择所需功能,进行相关的操作: 系统管理员:管理现有课程、学期课程、教师及学生信息,并对这些信息进行相应的查询、添加、删除等操作 教师:管理本人的学期课程,查询选修所任课程的学生列表,并给学生打分等 学生:查询学期课程和选课情况,选择或删除选修课程,查询已修课程成绩等 要求学生用面向对象的思想对系统进行分析,设计所需类并实现,调试通过,基本数据信息存放到文件中。 三、测试数据 系统可采用如下的图形界面: 用户登录初始界面 2.登录后(以系统管理员为例) 3.选择相应功能(以教师管理为例) 其余功能类似,学生可根据自己的理解增加其他的相关功能,考核时可酌情加分:如 课程信息中还可增加前导课程的信息,学生选择某门课时,必须保证前导课已修;否则给出相应提示性信息 开课时受班级人数限制,超过指定人数不能选课; 某个学生已选的课程上课的时间不能冲突; 学生每学期所选课程学分数不能超过30学分…… 四、实现提示 1、设计思路 采用面向对象程序设计思想开发比较大型的软件,一般需要在两个层面上进行抽象: (一)将某类实体的“数据+行为”封装抽象,作为独立的整体与外部进行交互。 在该系统中,比较明显存在的抽象实体主要是如下五类: (1)系统管理员:管理教师、学生、课程(学期课程)信息,主要是新记录的增加、现有记录的删除、修改和各种查询。作为管理员不应该涉及其他角色的具体工作,比如某门课程成绩的登陆工作等;(如何进行权限管理?) (2)教师:负责教师本人的日常工作,如个人信息(帐户、姓名、密码等)的维护,开展学期课程教学(在本系统中主要体现在将某课程与教师绑定),所授学科成绩的登陆等等 (3)学生:进行学生相关信息的维护,如个人信息(帐户、姓名、密码等),课程信息以及成绩信息(包括已选课程、在选课程---已选但未取得成绩的课程)等 思考:上述三个类之间具有一些共同的数据成员和操作,如基本信息(帐户、姓名、密码)及基本操作(记录的增加、删除、修改、查询)等,怎样用OOP中的继承和多态等特性来提高编程效率并降低编程复杂度? (4)课程: 这个实体比较简单,只需要保持课程号、课程名及学分信息即可,该类跟其他实体的交互主要体现在它的相关类“学期课程”上 (5)学期课程:即本学期某个教师开设某门课程,它可由课程派生而来,与某个教师绑定。学生选课/退课以及某门课程的成绩具体应着眼到学期课程上,教师可主动增/减学期课程,系统管理员则从整体管理。 注意:除了以上比较明显的各个实体之外,应该还有各实体类相应的“容器”类,来存放该类的所有实例,以便在运行期进行添加、查找、删除、更新及其他相关操作 (二)在系统实现时,数据访问层、中间层和用户接口层也必须有比较鲜明的分割,以进一步去除类间的耦合性。 在本系统中,这三层分别负责如下功能: (1)用户接口层(UI):负责显示各层菜单及子功能包括菜单间的切换;接收用户输入,将用户输入转换成对下层(中间层)的调用;接受下层的执行结果回显给用户,也就是说与控制台直接交互的代码均在该层的类中实现 (2)业务逻辑层(BLL):负责对用户接口的各种调用作出响应,将计算结果返回给上层,在需要时调用下层(数据访问层)来读取各实体的数据 (3)数据访问层(DAL):负责真正与各类数据打交道,例如,从文件中读取管理员、教师、学生以及课程的相关信息,供上层调用;在实体执行某些修改时,将新的信息保存到文件中去。 在系统设计时,应该将各层之间的功能分割用不同类将其体现出来,尽量使各层的类

文档评论(0)

cai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档