C/C++《面向对象程序设计课程设计》[2023-06-12]

发布时间 2023-06-12 02:41:49作者: programwriter

C/C++《面向对象程序设计课程设计》[2023-06-12]

《面向对象程序设计课程设计》课程教学大纲(独立设置)

一、课程基本信息

课程编码 031303004 课程名称 面向对象程序设计课程设计
开课单位 电子与信息工程学院
总学分 1 总学时 2周 实验学时 2周
课程类型 专业集中实践必修课
适用对象 计算机科学与技术
先修课程 面向对象程序设计
课程简介
《面向对象程序设计课程设计》是计算机科学与技术专业的集中实践课程,是计算机程序设计的重要实践基础。通过课程设计的训练使学生进一步加强对所学理论知识的理解和掌握,培养学生运用面向对象的基本知识解决实际应用中的系统建模能力、独立设计程序与解决问题的能力、团队协作集成程序模块及调试能力、初步的软件设计及软件测试的能力。使学生能够用面向对象的视角把现实世界中的实际问题在计算机内部表示出来,并培养良好的程序设计和开发能力。

二、课程培养目标
通过该课程的学习,着重培养大学生实践以及动手操作能力,让学生成为德才兼备、全面发展的人才;通过系统的设计、代码编写与调试、整理资料等环节,培养学生掌握程序设计方法和组织实践的基本技能;培养学生科学研究能力和勇于实践探索不断创新的科学精神;培养学生追求真理、勇攀科学高峰的责任感和使命感,精益求精的大国工匠精神,科技报国的家国情怀和使命担当;培养学生实事求是的科学态度和辩证唯物主义的世界观,培养学生的爱国主义思想。
[课程思政目标]:
通过课程教学,帮助学生形成正确的社会主义核心价值观,养成科学思维和创新习惯,培养学生大工程观,提升学生的政治素养,切实提高具有工匠精神的新工科人才培养质量。
[课程知识目标]:
通过课程设计,使学生掌握面向对象编程的掌握类、对象、继承、多态、抽象类、接口等基本概念和原则。掌握常用的面向对象编程语言特性,如Java、C++中的类、对象、继承、多态等内容。熟练掌握并能运用常见的设计模式,如工厂模式、观察者模式、策略模式、单例模式等。通过实践项目开发,掌握面向对象编程方法,熟练掌握编写高质量、可拓展和可维护的面向对象程序的技巧和方法。学会对面向对象程序进行重构和优化,提高程序的质量、可读性和可维护性。
[课程能力目标]:
通过课程设培养学生综合运用所学知识与生产实践经验,分析和解决工程技术问题的能力。加深对常用面向对象编程语言应用的理解,强化学生的逻辑思维能力和动手能力。通过课程设计实践,训练并提高学生在理论计算、结构设计、查阅设计资料、运用标准与规范、编制软件和应用计算机等方面的能力。
[课程素质目标]:
通过本课程的学习,促进专业课的学习,使面向对象程序设计课程设计与其他专业知识相辅成,构筑合理的知识体系,提高学生在面向对象程序设计应用方面的实践技能和科学作风,为后续专业课和为毕业后进入科学研究领域打下良好的基础。
三、实验课程内容(项目)及学时
(一)学时分配
序号 实验项目 内容提要 实验类型 实验学时 每组人数 实验性质
1 设计动员、课题讲解、布置课题 对面向对象程序设计课程设计的设计题目进行讲解,学生通过查找资料选择一道题目进行设计 讲授 2 1 必做
2 方案设计 要求理解面向对象的基本概念、原则和方法,能够应用面向对象的思想进行程序设计。在设计过程中注重程序的可读性、可维护性和可扩展性,能够撰写清晰的程序文档。 设计 2 1 必做
3 功能实现 代码编写与调试 验证 2 1 必做
4 考核与验收 验收、答辩、提问 综合 2 1 必做

(二)实验教学内容
根据所提供的设计题目:人事管理系统、学生成绩管理系统、毕业生选题管理系统、课外兴趣小组管理系统、飞机订票系统、客户通讯录管理系统、图书借阅管理系统和ATM柜员机模拟程序。要求学生自行选择一个设计题目,利用所学的面向对象程序设计知识,按题目要求完成一个合理的设计。

题目一 人事管理系统

模拟某单位的人事管理。人事信息主要包括:员工编号、所在部门、职务、薪资等级、薪资、联系方式等内容;部门信息主要包括:部门编号、部门名称等内容。完成以下操作:实现员工信息、部门信息的添加、修改、删除和查询。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目二 学生成绩管理系统

建立的数据库中包含如下信息:学号、姓名、班级、语文、数学、英语成绩,至少有5个班,每个班有10名以上学生,用txt格式表示各种表。可以按姓名/学号/班级/课程名称进行查询,实现学生信息的插入,删除和修改,能够查询每个课程的最高分,最低分及相应学生的姓名、班级和学号,能够查询每个班级某门课程的优秀率(90分以上)、不及格率,能够排序。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目三 毕业生选题管理系统

模拟毕业生选择指导老师提供的毕业课题。老师可增加、删除、修改课题,学生可选择课题,老师和学生都可以查看当前已经选择的结果。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目四 课外兴趣小组管理系统

系统主要处理课外兴趣小组的相关信息。学生信息主要包括:学号、姓名、性别、兴趣等内容;兴趣主要包括:兴趣编号、兴趣内容。完成以下操作:实现学生兴趣信息的添加、修改、删除和查询。录入并保存一个班级学生的多门课程的成绩,提供多种排序、查询功能和数据统计、分析功能。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目五 飞机订票系统

通过此系统可以实现如下功能:1)录入:录入航班情况;2)查询:查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;3)订票:可以订票,如果该航班已经无票,可以提供相关可选择航班;4)退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号;5)修改航班信息:当航班信息改变可以修改航班数据文件。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目六 客户通讯录管理系统

假设客户数据包括:姓名、性别、职务、电话、QQ、微信、公司。主要功能:1)通讯录信息录入功能;2)通讯录信息修改、删除功能;3)通讯录信息浏览功能;4)通讯录信息查询功能;5)按姓名排序功能;6)保存数据到文件。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目七 图书借阅管理系统

图书管理(增加图书、查询图书、删除图书、图书借阅、还书);会员管理(增加会员、查询会员、删除会员、借书信息)。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

题目八 ATM柜员机模拟程序

当输入给定的卡号和密码(初始均为123456),系统登录 ATM柜员机系统,用户可按进行查询余额(初始为10000元),ATM取款(每次取款金额为100的位数,总额不超过5000元,不许透支),ATM存款:不能出现负存款,修改密码:新密码长度不小于6位,不允许出现6位完全相同情况,只有旧密码正确,新密码符合要求且两次办法入相同的情况下才可以成功修改密码。
四、课程教学的基本要求
面向对象程序设计课程设计安排为2周时间,课程内容以少量的时间讲授理论和大量的时间从事实践操作,并以实践为主进行教学;前期的准备工作由指导老师另行安排。

源码

https://pan.baidu.com/s/1J--MYtUyPilpJKTD15-SgA?pwd=1111

五、考核方式与成绩评定
【考核方式】:考查。
【成绩综合评定办法】:课程设计结束时,要求学生写出课程设计报告,设计出相关系统,并按设计要求调试通过。
(1)设计成果质量,占总成绩40%。
主要考察学生系统设计的难易程度;系统的设计是否规范合理;系统的性能是否能够达到设计要求。
(2)设计总结报告,占总成绩30%。主要考察学生对实验涉及的理论知识掌握、叙述的程度,对实验得到的结论和现象是否能够正确理解和分析,并能够合理的解释实验中出现的问题,正确判断实验的成功、失败,书写、排版是否规范。
(3)答辩占总成绩20%。
(4)课程设计期间的纪律表现,占总成绩10%。

六、教学参考书
[1]陈维兴,林小茶主编.C++面向对象程序设计教程(第4版).北京:清华大学出版社,2018.10.
[2]《Java程序设计实用教程(第4版)》,叶核亚主编,电子工业出版社,2013年;
[3]《面向对象程序设计教程(Java版)》,(美)C.Thomas Wu主编,机械工业出版社,2007年;
[4]《面向对象程序设计:C++语言描述(原书第2版)》,约翰逊鲍尔主编,机械工业出版社,2011年。

撰写人:
审核人:
审定人:
日 期: