《面向对象程序设计》教学大纲资料
《面向对象程序设计》(Object-Oriented Programming)教学大纲

《面向对象程序设计》(Object-Oriented Programming)课程教学大纲第一部分大纲说明一、课程的性质和任务《面向对象程序设计》是计算机科学与技术专业本科生的一门必修课程。
面向对象软件开发方法是吸收了软件工程领域有益的概念和有效的方法而发展起来的一种软件开发方法。
它集抽象性、封装性、继承性和多态性于一体,可以帮助人们开发出模块化、数据抽象程度高的,体现信息隐蔽、可复用、易修改、易扩充等特性的程序。
本课程主要介绍面向对象程序设计的方法和C++语言的基本概念。
以C++语言中的面向对象机制为主。
学习者在学习过程中可以通过大量的程序实例和相关练习,逐步掌握C++的面向过程和面向对象的功能,从而掌握面向对象程序设计的基本知识和基本技能。
二、先修课要求有一门程序设计语言基础。
三、课程的教学基本要求1.了解面向对象的基本概念和使用面向对象技术进行程序设计的基本思想。
2.能比较熟练地用C++语言进行一般面向对象的程序设计。
3.初步掌握面向对象编程环境Visual C++的使用。
四、教学方法和教学形式建议1.该课程实践性较强,需要学员多作练习。
2.主持教师需要有比较熟练的编程经验,对Visual C++环境比较熟悉。
3.针对所留习题,可以组织两到三次讨论,以便学员掌握面向对象设计思想。
五、课程教学要求的层次1.掌握:要求学生能够较好地理解,并且能够进行简单分析和判断。
2.了解:要求学生能够一般地知道所学内容。
第二部分多种媒体教材一体化总体设计初步方案一、学时分配24。
第三部分教学内容和教学要求一、面向对象的程序设计方法和C++简介: 3学时教学内容:面向对象程序设计的基本思想及基本概念:对程序的的质量要求;程序的模块化和结构化;为什么要面向对象:从面向过程到面向对象;C++语言发展的历史:面向对象语言分类;C++中支持面向对象的特点;面向对象的软件开发环境与Visual C++。
教学要求:了解:面向对象程序设计的基本思想及基本概念。
《面向对象程序设计》教学大纲

《面向对象程序设计》教学大纲面向对象程序设计(Object-Oriented Programming,OOP)是一种计算机编程的范式,它以对象作为程序的基本单元,通过封装、继承和多态等机制来组织和管理代码。
面向对象程序设计的方法论和技术在软件开发领域中得到广泛应用,是培养学生计算机编程能力和软件开发思维的重要环节。
本文介绍《面向对象程序设计》的教学大纲。
一、课程目标和学习要求1.目标:本课程旨在培养学生具备面向对象程序设计的思维方式和技术,能够熟练运用面向对象的编程语言进行软件开发和问题解决。
2.学习要求:(1)了解面向对象程序设计的概念和基本原则;(2)掌握面向对象编程语言的基本语法和常用类库;(3)能够设计和实现简单的面向对象程序;(4)具备分析和解决问题的能力,并能将问题抽象为面向对象的模型;(5)了解面向对象程序设计的发展和应用领域。
二、教学内容与学时安排1.面向对象程序设计概述(2学时)(1)面向对象的基本概念;(2)面向对象与面向过程的对比;(3)面向对象的优势和局限性。
2.面向对象编程语言概述(4学时)(1)常见的面向对象编程语言;(2)面向对象编程语言的特点和发展历程;(3)选择合适的面向对象编程语言的原则和方法。
3.类和对象(8学时)(1)类的概念和特点;(2)封装、继承和多态的基本概念和实现方式;(3)类和对象的关系;(4)类的设计原则和实践。
4.类和对象的实现(10学时)(1)类和对象的成员变量和成员函数;(2)构造函数和析构函数的作用和使用方法;(3)静态成员和静态方法;(4)访问控制修饰符的使用。
5.继承和多态(10学时)(1)继承的概念和实现方式;(2)派生类和基类的关系;(3)多态的概念和实现方式;(4)虚函数和纯虚函数的作用和使用方法;(5)多态的实现原理和使用场景。
6.异常处理(6学时)(1)异常的概念和处理方式;(2)异常处理的语法和机制;(3)异常处理的设计原则和实践。
面向对象程序设计(Java)课程教学大纲(软件工程)

面向对象程序设计(Java)教学大纲一、说明(一)课程性质本课程是计算机科学与技术(软件工程)专业的专业必修课,是软件开发类的主要基础课程。
(二)教学目的本课程通过讲授Java语言的基础知识、最新技术和Java程序的设计开发方法,使学生理解和掌握面向对象程序设计的基本思想,熟练地使用Java语言进行程序的编写、编译以及调试工作,熟悉Java平台的基本框架及体系结构,能独立、比较熟练地用Java技术和主流IDE进行中小规模的程序设计和开发,为后续课程及大中型应用软件的研究、设计打下基础。
(三)教学内容知识方面:了解Java语言程序设计基础知识,Java语言的产生背景及其主要特点,掌握Java 语言的数据类型、常量、变量、表达式,掌握Java语言的程序控制结构、以及字符串、数组等,理解Java面向对象编程的基本思想及其特征,掌握图形编程、事件处理、Swing用户界面设计;掌握部署应用程序和Applet、异常处理与调试技巧;了解泛型程序设计、集合框架;掌握多线程编程知识,Java输入输出流,了解网络编程和数据库开发知识。
技能方面:会独立编写简单的Java应用程序;会独立编写简单的Java小应用程序(Java Applet);能应用AWT和Swing常用组件设计图形化用户界面;掌握Java异常处理机制的简单应用;能编写简单的多线程程序;掌握使用Java输入输出流,能实现对文件的处理。
掌握JDBC,能够对数据库进行处理。
(四)教学时数108学时(课堂授课:36学时;实验:72学时)/ 4学分。
(五)教学方式多媒体教学、上机试验。
二、本文理论部分第1章Java程序设计概述与环境教学要点:了解Java语言的发展历程;掌握Java语言的基本特点;了解Java虚拟机和Java运行系统;了解Java程序编写规范等;了解Java开发环境及常用编辑软件。
教学时数:2学时。
教学内容:1.1 Java的发展及其特点(0.5学时)Java程序设计平台、Java“白皮书”的关键术语、Java发展简史、以及关于Java的常见误解。
《面向对象程序设计》教学大纲资料

《面向对象程序设计》教学大纲资料面向对象程序设计教学大纲西北民族大学数学与计算机科学学院制定的时间:二一二年五月1面向对象程序设计教学大纲一、课程基本资料主讲教师:曹永春、蔡正琦、顿毅杰主教材:《C++面向对象程序设计》中国铁道出版社,陈维兴、林小茶编著,第2版,2021辅助教材:1.《C++编程思想》机械工业出版社,美Bruce Eckel,Chuck Alliso 著,刘宗田,袁兆山,潘秋菱等译; 第1版,2021年2. 《C++程序设计教程》机械工业出版社,美H.M.Deitel P.J.deitel 薛万鹏等译,2021年3.《C++程序设计语言》,机械工业出版社,美Bjarne Stroustrup 著,裘宗燕译,2021年4.《C++面向对象程序设计习题解析与上机指导》清华大学出版社,陈维兴主编,第2版,2021年实验教材及参考书:同上课程性质:学科选修课学分:4分课时:72学时,其中理论课54学时,上机实验18学时先修课程:计算机导论、C语言程序设计课程结构:多媒体教学,课堂讨论、课内实验、课后作业评价方案:(考核依据、评分的办法、权重的分布)?平时成绩:10% 课堂表现(课堂提问、考勤、作业等)?实验成绩:20%(实验报告、实验考试)2?期中成绩:20%(闭卷考试) .期末成绩:50%(闭卷考试)参考书目:名称《C++编程思想》编著者刘宗田,袁兆山,潘秋菱等译《C++程序设计教程》H.M.Deitel, P.J.deitel著,薛万鹏等译《C++程序设计语言》Bjarne Stroustrup 机械工业出版社2021年机械工业出版社2021年出版社机械工业出版社出版年月2021年著,裘宗燕译《C++面向对象程序设计习题解析与上机指导》陈维兴主编清华大学出版社2021年推荐刊物:1、《计算机学报》2.《软件学报》3.《程序员杂志》4.《码农周刊》5.《快乐码农》相关网站:1. 中国计算机学会http:/// 6. 中国知网e you”,并给程序加一行注释“Fist c++ program”;22x?4x?5的值,x为整数,并用主函数调② 编写一个完整的包含求解用该函数;③ 利用重载函数,重载上面的函数,x为浮点数;④ 编写一个程序,对一个整数数组求和,结果使用内部变量sum 存储,同时对整数中的奇数求和,结果使用内部变量sum存储,在主程序中将两个结果输出。
《面向对象程序设计》教学大纲

《面向对象程序设计》教学大纲一、课程概述面向对象程序设计是计算机科学与技术专业的一门重要的专业基础课程。
本课程旨在使学生掌握面向对象程序设计的基本概念、方法和技术,培养学生运用面向对象的思想进行程序设计和开发的能力,为后续的专业课程学习和实际项目开发打下坚实的基础。
二、课程目标1、知识目标理解面向对象程序设计的基本概念,如对象、类、封装、继承、多态等。
掌握面向对象编程语言(如 C++、Java 等)的语法和特性。
了解面向对象程序设计的基本原则和设计模式。
2、能力目标能够运用面向对象的方法进行问题分析和设计。
能够使用面向对象编程语言实现简单的程序设计和开发。
具备良好的代码规范和编程习惯,能够编写高效、可靠的代码。
3、素质目标培养学生的逻辑思维能力和创新意识。
提高学生的团队协作能力和沟通能力。
培养学生的自主学习能力和解决问题的能力。
三、课程内容1、面向对象程序设计基础面向对象的概念和特点对象和类的定义与使用类的成员变量和成员函数对象的创建和销毁2、封装与信息隐藏访问控制修饰符的使用类的封装实现构造函数和析构函数3、继承与多态继承的概念和实现基类和派生类的关系多态的实现机制(虚函数、动态绑定)4、模板与泛型编程函数模板和类模板模板的特化和偏特化5、异常处理异常的概念和分类异常的抛出和捕获自定义异常类6、标准模板库(STL)容器类(vector、list、map 等)迭代器的使用算法库(排序、查找等)7、面向对象程序设计实践综合案例分析与设计小组项目开发四、教学方法1、课堂讲授通过讲解、演示和示例,向学生传授面向对象程序设计的基本概念、原理和技术。
2、实践教学安排实验课程,让学生通过实际编程练习,巩固所学知识,提高编程能力。
3、案例教学通过实际案例的分析和讨论,引导学生运用面向对象的思想解决问题。
4、小组讨论组织学生进行小组讨论,促进学生之间的交流和合作,培养团队协作能力。
5、在线学习利用在线学习平台,提供丰富的学习资源,方便学生自主学习和拓展知识。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象程序设计教学大纲西北民族大学数学与计算机科学学院制定的时间:二〇一二年五月面向对象程序设计教学大纲一、课程基本资料主讲教师:曹永春、蔡正琦、顿毅杰主教材:《C++面向对象程序设计》中国铁道出版社,陈维兴、林小茶编著,第2版,2009辅助教材:1.《C++编程思想》机械工业出版社,美Bruce Eckel,Chuck Alliso著,刘宗田,袁兆山,潘秋菱等译; 第1版,2011年2. 《C++程序设计教程》机械工业出版社,美H.M.Deitel P.J.deitel 薛万鹏等译,2000年3.《C++程序设计语言》,机械工业出版社,美Bjarne Stroustrup 著,裘宗燕译,2005年4.《C++面向对象程序设计习题解析与上机指导》清华大学出版社,陈维兴主编,第2版,2009年实验教材及参考书:同上课程性质:学科选修课学分:4分课时:72学时,其中理论课54学时,上机实验18学时先修课程:计算机导论、C语言程序设计课程结构:多媒体教学,课堂讨论、课内实验、课后作业评价方案:(考核依据、评分的办法、权重的分布)・平时成绩:10% 课堂表现(课堂提问、考勤、作业等)・实验成绩:20%(实验报告、实验考试)・期中成绩:20%(闭卷考试).期末成绩:50%(闭卷考试)参考书目:推荐刊物:1、《计算机学报》2.《软件学报》3.《程序员杂志》4.《码农周刊》5.《快乐码农》相关网站:1. 中国计算机学会/sites/ccf/2. 计算机爱好者协会/forum.php3.C语言中文网/cpp5.中国悠悠期刊网/6. 中国知网/文献1.谭浩强.C程序设计.第4版.北京:清华大学出版社,20102.陈伟兴,林小茶.C++面向对象程序设计.北京:清华大学出版社,20003.陈伟兴,陈昕.C++面向对象程序设计习题解析与上机指导. 北京:清华大学出版社,2003.4.Ravi Sethi.Programing Languaes:concepts and constracts.Addison-Wesley PublishingCompany,1996.5.Ronaad J.Norman ,Object-Oriented Systems and Ddesign,1996.6.郑莉,董源.C++语言程序设计.第2版.北京:清华大学出版社,2001.7.王燕.面向对象的理论与C++实践.北京:清华大学出版社,1997.8.张海藩,牟永敏.面向对象程序设计实用教程. 北京:清华大学出版社,2001.9.张国峰.C++语言及其程序设计教程. 北京:电子工业出版社,1997.二、教学目标、组织形式、考核要求三、学习建议与要求1.做好课前预习,查阅相关知识。
2.课间认真听讲,对教师讲解内容融会贯通,举一反三。
3.认真完成课后作业。
4.在讨论和提问中巩固理论知识,学习编程思维。
四、教学内容概要学时分配五、正文第一章面向对象程序设计概述教学要点:面向对象的基本概念和典型的语言教学时数:3学时教学内容:2.1什么是面向对象程序设计2.1.1新的程序设计范型2.1.2面向对象程序设计的基本概念2.1.3 面向对象程序设计的基本特征2.2什么要使用面向对象程序设计2.2.1传统程序设计方法的局限性2.2.2 面向对象程序设计的主要优点2.3面向对象程序设计的语言2.3.1面向对象程序设计语言的发展概况2.3.2几种典型的面向对象程序设计语言授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:领会和理解面向对象程序设计的4个基本概念:对象、类、消息和方法,理解面向对象程序设计的4个基本特征,了解几种典型的面向对象程序设计语言。
第二章C++基础教学要点:了解C++的产生和特点,理解C++程序的结构特性,C++程序的编辑、编译、连接和运行操作,掌握C++在非面向对象方面的扩充。
教学时数:7学时教学内容:2.1C++的产生和特点2.1.1C++的产生2.1.2C++的特点2.2C++程序的结构特性2.2.1一个简单的C++示例程序2.2.2 C++程序的结构特性2.2.3 C++程序的编辑、编译和运行2.3C++程序的编辑、编译、连接和运行2.4C++在非面向对象方面的扩充2.4.1注释与续行2.4.2输入输出流2.4.3灵活的变量说明2.4.4结构、联合和枚举名2.4.5函数原型2.4.6 const 修饰符2.4.7 void 型指针2.4.8 内联函数2.4.9带有缺省参数值的函数2.4.10函数重载2.4.11作用域标识符::2.4.12无名联合2.4.13强制类型转换2.4.14 new 和delete2.4.15引用授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:了解C++的结构特性,熟练掌握并能综合应用C++在非面向对象方面扩充的应用内容。
第三章类和对象(一)教学要点:理解类和对象的概念,熟练掌握类和对象的定义、构成和使用。
重点掌握类成员的访问属性及其使用和构造函数的定义和应用。
教学时数:11学时教学内容:3.1类的构成3.1.1从结构到类3.1.2类的构成3.2成员函数的定义3.3对象的定义和使用3.3.1类与对象的关系3.3.2对象的定义3.3.3对象中成员的访问3.3.4类的作用域和类成员的访问属性3.3.5对象赋值语句3.4构造函数与析构函数3.4.1构造函数3.4.2成员初始化表3.4.3带默认参数的构造函数3.4.4析构函数3.4.5默认的构造函数和默认的析构函数3.4.6重载构造函数3.4.7拷贝构造函数3.4.8浅拷贝和深拷贝授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:类的构成,对象的定义及使用、成员函数、构造函数与析构函数等内容的相关知识及面向对象初步的编程方法。
第四章类和对象(二)教学要点:进一步理解和掌握类和对象的相关内容,包括this指针的概念、对象数组、对象指针、string类、友元、静态成员以及类的组合、共享数据的保护等内容。
教学时数:8学时教学内容:4.1自引用指针this4.2对象数组与对象指针4.2.1对象数组4.2.2对象指针4.2.3 string类4.3向函数传递对象4.3.1使用对象作为函数参数4.3.2使用对象指针作为函数参数4.3.3使用对象引用作为函数参数4.4静态成员4.4.1静态数据成员4.4.2静态成员函数4.4.3通过普通指针访问静态成员4.5友元4.5.1友元函数4.5.2友元类4.6类的组合4.7共享数据的保护4.7.1常引用4.7.2常对象4.7.3常对象成员4.8C++程序的多文件组成授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:领会并能应用this指针、掌握对象数组的定义及初始化方式、对象指针的概念及应用、静态成员的作用及定义和使用方式,友元函数和友元类的定义和使用,类的组合编程及对象成员的初始化方法等概念和编程方法。
第五章继承与派生类教学要点:熟练掌握派生类定义方式和基类成员在派生类中的访问规则、掌握派生类的构造函数和析构函数的执行顺序和构造规则、理解多继承和虚基类的概念,并能应用于编程、深入理解赋值兼容规则。
教学时数:6学时教学内容:5.1继承与派生类的概念5.1.1为什么要使用继承5.1.2派生类的声明5.1.3基类成员在派生类中的访问属性5.1.4派生类对基类成员的访问规则5.2派生类的构造函数和析构函数5.2.1派生类构造函数和析构函数的调用顺序5.2.2派生类构造函数和析构函数的构造规则5.3调整基类成员在派生类中的访问属性的其它方法5.3.1同名成员5.3.2访问声明5.4多继承5.4.1多继承的声明5.4.2多继承的构造函数与析构函数5.4.3虚基类5.4.4赋值兼容规则授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:熟练掌握派生类定义方式和基类成员在派生类中的访问规则、掌握派生类的构造函数和析构函数的执行顺序和构造规则、理解多继承和虚基类的概念,并能应用于编程、深入理解赋值兼容规则。
第六章多态性与虚函数教学要点:理解多态性概念,区分编译时的多态和运行时的多态及在C++中的实现方法、重点学习C++中实现运行时多态的方法虚函数,掌握虚函数的作用和定义方法并能够熟练使用,理解纯虚函数和抽象类的概念及定义和使用。
教学时数:6学时教学内容:6.1多态性概述6.2虚函数6.2.1虚函数的引入6.2.2虚函数的作用和定义6.2.3虚函数与重载函数的关系6.2.4多继承与虚函数6.2.5虚函数举例6.3纯虚函数和抽象类6.3.1纯虚函数6.3.2抽象类授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:深入理解多态性概念,掌握虚函数的作用和定义方法并能够熟练使用,理解纯虚函数和抽象类的概念及定义和使用。
第七章运算符重载教学要点:理解运算符重载的含义,掌握运算符重载函数的定义和使用方式,区别友元运算符重载和成员运算符重载两种运算符重载函数的定义方法及相应的调用方法、了解几种常见运算符含义及重载方式、掌握标准类型间的转换。
教学时数:5学时教学内容:7.1运算符重载7.2运算符重载函数的两种形式7.2.1友元运算符重载函数7.2.2成员运算符重载函数7.2.3运算符重载应该注意的几个问题7.3几个常用运算符的重载7.3.1单目运算符“++”和“——”的重载7.3.2赋值运算符“=”的重载7.4重载插入运算符和提取运算符7.4.1重载插入运算符7.4.2重载提取运算符7.5类型转换7.5.1标准类型间的转换授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:理解运算符重载的含义,掌握运算符重载函数的定义和使用方式,区别友元运算符重载和成员运算符重载两种运算符重载函数的定义方法及相应的调用方法、了解几种常见运算符含义及重载方式、掌握标准类型间的转换。
第八章模板教学要点:理解模版的概念,掌握函数模板及其声明方法,掌握模板函数及其生成方法,学习类模板的声明与使用方法,区分函数模板和类模板的定义及使用。
教学时数:3学时教学内容:8.1模板的概念8.2函数模板与模板函数8.2.1函数模板的声明8.2.2函数模板的使用8.3类模板与模板类8.4程序举例授课方式:多媒体教学,课堂讨论、课内实验、课后作业考核要求:理解模版的概念,掌握函数模板及其声明方法,掌握模板函数及其生成方法,学习类模板的声明与使用方法。
第九章C++的输入和输出教学要点:熟悉流及流类库的作用,熟练掌握流类库中常用的类及其成员函数的使用方法,掌握重载“<<”和“>>”的方法。
掌握文本文件的打开、关闭及输入输出方法和二进制文件的打开、关闭及输入输出方法。