面向对象设计的基本原则和实践建议

时间:2019-05-13 02:19:33下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《面向对象设计的基本原则和实践建议》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《面向对象设计的基本原则和实践建议》。

第一篇:面向对象设计的基本原则和实践建议

面向对象设计的基本原则:层次化抽象原则,按照问题域逻辑关系来识别类;责任均衡分配原则,避免出现God类和Idiot类;简单化原则,一个方法尽量只处理一种情况,把问题要求进行的处理进行划分,识别出多种不同情况;封装原则,一个类的属性都不可以让外部直接访问;局部化原则,类之间不要冗余存储相同的数据,方法之间不能够出现控制耦合;完整性原则,一个类需要提供针对相应数据进行处理的完整方法集。完整是个相对概念,一般来说是相对于问题域需求。重用原则(共性抽取原则),把不同类之间具有的共性数据或处理抽象成继承关系,避免冗余;显式表达原则,显式表达所有想要表达的数据或逻辑,不使用数组存储位置或者常量来隐含表示某个特定状态或数据;信任原则,一个方法被调用时,调用者需要检查和确保方法的基本要求能够被满足,获得调用结果后需要按照约定的多种情况分别进行处理;懂我原则,所有类、对象、变量、方法等的命名做到“顾名思义”。

面向对象设计实践建议:

(1)首先问题结构分析和抽象表达:识别出几个关键类及其关系,这时候和具体的数据表示和结构都没有关系;

(2)根据问题要满足的功能,定义每个类外部可访问的行为,不涉及类的内部行为和数据,并规划这些类如何协同来完成系统功能,逐层分解。

(3)对每个类,定义它应该保存的属性及类型,和相应的数据控制行为(外部可见),从而满足对外部可见行为的实现;

(4)系统输入和输出的处理。分析输入和输出的层次性和模式特征。如果如层次性,则按照相应模式分层进行处理。顶层一般可交给主类进行处理;往下各个层次应该交给对输入分析结果感兴趣的类去处理,减少信息耦合度。

(5)检查得到的设计结果是否出现违背相关原则的问题。

第二篇:马克思主义基本原课程总结

《马克思主义基本原理概论》课程小结

目前概论课普遍存在教学内容和教学方法陈旧的现象,枯燥、乏味、没有新鲜感的教学过程影响着教学效果。所以,在备课的过程中,针对艺术类学生的特点,我花了大量的时间研究案例教学。在案例教学的实践中,虽然经历过几次小小的挫折,但在学生们的鼓励下,我坚持了下来,受益匪浅。

总结经验如下:

1、教学中盲目堆积案例。为了活跃课堂气氛,吸引学生听课,在《社会基本矛盾及其运动规律》授课过程中穿插了很多案例,而每个案例都讲不透彻。最后下课后,学生只记得讲了什么有趣案例,而没有记住授课的内容,以致本末倒置。这样使用案例,表面上热热闹闹,实际上空空如也,达不到教学目的。

2、没有真正发挥学生的主体作用。在案例教学的授课过程中,我作为教师仍处于传授者的地位,从案例的介绍、问题的提出、分析的展开、结论的得出、所涉理论知识的深浅以及时间的把握等方面,均处于主导。真正让学生来思考、分析、讨论的情形并不多,反省一下,多为举例教学。在这种情形下的课堂,学生仍是看热闹的外人,而没有真正深入到案例中去。没有积极的思考,当然就不可能有深切的体会和收获。

基于个人对于案例教学的思考,形成了一篇名为《探析独立学院思想政治理论课教学中案例选择与解释——以<马克思主义基本原理概论课>为例》的论文,并获得“六届辽宁省高校青年德育工作者理论研讨会征文比赛”二等奖。

仅此论文,作为总结的一部分,向领导汇报。

(一)原理教学引入案例教学法的必要性

1.可听性:案例导入使抽象概念生动鲜活

马克思主义基本原理是通过对具体知识的概括、总结与再思考的方式,达到对世界本质和一般规律的把握。静态的基本原理是枯燥的,它们的具体作用体现在应用的过程中。为此,《原理》课必须以案例为铺垫,使其生动化。比如在“矛盾普遍性与特殊性”一节讲授中,教学案例是“南街村模式与华西村模式”的比较,不仅使学生看到中国新农村的美好前景,而且使学生能够领悟建设中国特色的社会主义不能照搬别国的模式,不能一刀切,要允许多种经济形式、多种管理方式、多种运行机制共同发展。又比如在“主要矛盾与次要矛盾”的问题上,选用关云长败走麦城的典故。关羽并没有真正接受诸葛亮的劝诫,他把孙权看成是同曹操一样可恶的“碧眼小儿”;同时打击曹、魏两家,主次不分,全线出击,最终酝成地失人亡的悲剧。这些案例的分析,学生听得津津有味,增强了学习兴趣。

2.通俗性:案例介绍加深学生对深奥理论的理解

学生不是专业的马克思主义理论研究者,有些基本原理教师觉得容易理解,学生就是想不明白,这主要与他们的生活阅历与思维方式有关。“案例教学法”能使抽象理论具体化、通俗化,减少学生的畏惧心理和死记硬背的习惯。比如“哲学”中所讲的“属人世界”,学生百思不得其解,尤其是理工科学生,他们所认

为的世界就是基本粒子与场,不自觉地停留在机械唯物主义的层次上。授课中可以通过对“费尔巴哈生平”的分析,讲清这位伟大的唯物主义哲学家为什么不能冲破历史唯心主义牢笼。经过讨论,使学生对机械唯物主义与历史唯物主义有个比较清晰的区分,从而带动一系列难点的解决。又比如,学生对“认识来源于实践”感受不深,觉得很多成功来源于灵感和偶然。教学中选用摩尔根纂写《古代社会》一书的案例,向同学说明,为什么生活在资本主义上升时期的摩尔根能写出研究原始社会的一部杰作?这离不开他的亲身实践,他除了对欧、美许多未开化的原始部落进行调查、考察、分析外,还在印第安易洛魁部落居住了40年之久,对原始部落的经济、社会组织、婚姻、家庭、习俗、宗教各方面都有了透彻的了解,掌握了丰富的第一手资料。而灵感和机遇的捕获,往往是多次实践的结果。这些都能引起学生思考与探究的兴趣,从而有效克服了机械的思维模式。3.实用性:案例教学培养学生分析解决实际问题的能力 理论必须要满足学生探索社会问题的需要、追求事业成功和日后人生幸福的需要,才能提高学生对它的认同感。如在讲“绝对真理和相对真理”问题时,列举人们对SARS、对甲型H1N1流感等的不断认识,通过讨论,使学生认识到人类始终处于追求真理的路上,学习是无止境的。在此过程中,学生独立思考的能力得到提高,解决实际问题的能力也随之增强。

有部分同学尽管对美国侵占伊拉克表示愤慨,但又认为美国在人权保护方面做得不错。针对这一情况,在“人的本质与价值”这一章节的教学中,可以着重介绍阿布格莱布监狱美军虐囚事件、美国政府在世界各地秘密设立的监狱以及美国国内的人权问题的大量案例,让学生了解人权是基于人的自然属性与社会属性享有的和应当享有的各种基本权利。通过案例分析,深刻地揭露了美国人权政治双重标准以及人权外交的实质。

对于学生希望成才的渴望,可以在“意识”相关章节的讲授中,列举通过主观努力取得成功的伟人,如居里夫人等;也可以在人民群众与杰出人物有关章节的讲授中,列举毛泽东、罗斯福等历史人物,回答“什么是人才?如何成才?为什么人人都可以成才”的基本道理,受到同学的欢迎。

(二)案例选择的基本原则 培养学生学习的兴趣,对提高思想政治理论课的时效性起着重大作用。因此,在教学中应当把思想政治理论课中案例的典型性与新颖性、知识性与趣味性、相关性与辐射性相结合。这不仅是思想政治理论课教学任务的艰巨性、严肃性和教学过程的复杂性所决定的,更是由独立学院学生生理、心理发展的特点决定的。

1.典型性与新颖性

典型性是案例选取最基本的原则,是指要以讲授的知识为中心来选择案例,使案例服务于讲授的知识,而且被选案例要有举一反

三、触类旁通的作用。比如在讲到“整个世界是一个相互联系的统一整体”时,可以运用“六度空间理论”加以阐释;在讲授“事物的发展道路是曲折的,前途是光明的”,选择詹姆士·琴纳推广种牛痘遇到的困难做作为案例。这类案例具有典型性,容易说明问题,案

例的分析和讨论能够有助于学生掌握基本的原理、处理事情的方法和原则等。但有些典型案例比较陈旧,过于“正统”,如,用塞翁失马诠释对立统一规律,用田忌赛马诠释质量互变规律,虽然典型,但这些故事学生们早就耳熟能详。这个时候,就必须举一些具有新颖性的例子。

什么是新颖性?一是新近的。对于那些新近发生在国内国际的新闻时事,那些最近发生在校园里和学生身边的事情,大家都会关注。二是别人没听过的。教师的知识面一般来说比学生要宽,掌握的教学资源也比较多,应当发挥自己的特长,多举一些学生不熟悉的新奇案例。

典型案例很能说明问题,但有时候不容易引起学生的兴趣。新颖的案例能够弥补典型案例的不足,为大家喜闻乐见,但未必具有广泛的影响力。所以,应将二者结合起来。在案例的总体分配中,典型性案例和新颖性案例都应当占有一定的比例,二者不可有所偏废。

2.知识性与趣味性

在案例的选择和运用上,要将知识性与趣味性结合起来。首先,要注重知识性。只有让学生在听课的过程中潜移默化地了解更多知识,他们才会对课程和教师有较强的认同感。例如,在讲“货币的本质”时就给学生举世界文学史上“四大吝啬鬼”(夏洛克、阿巴贡、泼留希金、葛朗台)的例子,往往这个时候,学生都在做笔记。

其次,趣味性非常重要。选择趣味性较强的案例,并以幽默诙谐的语言演绎出来,往往会收到事半功倍的效果。这种案例不一定要求很长,但一定要贴切。例如,在讲授“资本”一节内容时,需要讲清资本的本质属性(资本是一种特殊的价值)、表现形式(资本表现为不同的物质形式)和基本特点(资本的运动性、增值性和返还性)。如果就理论讲理论就显得比较抽象,学生不易理解,记忆也不深刻。可以列举孙悟空七十二变的故事,孙悟空虽然可以有不同的变化,但它本身是孙猴子,以此来比喻资本虽然可以在不同运动阶段采取不同的物质形式,但它本质上是一种特殊的价值。为了说明资本循环过程中的增值性,可以列举八十年代的流行歌曲《回娘家》里的一段歌词,指出资本在循环运动中带回的虽然不是“胖娃娃”,却也带回了“金娃娃”。通过讲述案例,增强了趣味性,使学生对“资本”这个知识点能有比较形象的理解。

在知识性和趣味性结合的过程中,如果二者发生冲突,知识性为先。学生自然希望案例越有趣越好,但教师有自己的责任,而且案例过多,会冲淡课本知识,出现“喧宾夺主”的后果。

3.相关性与辐射性

所谓相关性,要求案例选取要与学生专业相关、与学生就业相关、与学生生活相关,即以选择最贴近学生的事例为原则。如在讲人生价值时,引入“北大才子卖肉”、“广州硕士卖猪肉”和“大学生做村官”等事件,由于这一系列事件和大学生就业以及人生价值的实现有密切联系,在学生中间获得强烈反响,课堂讨论的气氛也十分活跃。

除了相关性之外,课堂教学所采用的案例一定要能够给学生留有较大的思维空间,要有较强的辐射性,要能够培养学生发散和创新的思维,从而提高他们的思维素质。如,在讲授经济和政治关系时,可以采用美国霸权主义的推行在世界范围内带来的后果,如科索沃战争、阿富汗战争和伊拉克战争等„„引导学生要正确认识霸权主义。同学们从不同的角度出发进行激烈的争论,提出许多很有见地的观点,使学生和教师均受益非浅。

(三)案例解释时应注意把握以下三对关系 1.教师讲授和学生讨论相结合以加强互动性

在传统教学中,教师占有绝对的主导地位,学生是教学的客体,处于被动和服从地位。在案例教学法中,学生是教学的中心,强调学生在教学活动中的主体地位,鼓励学生以主角的身份积极参与到教学活动中。在教学过程中,教师要创造良好的自由讨论的气氛和环境,简要介绍案例的相关背景,在讨论过程中对学生进行引导,使案例讨论紧紧围绕主题展开。

需要注意的是,学生们思想道德水平、认识问题分析问题的能力参差不齐,尤其是许多学生往往受现实阴暗面的影响较深,看问题往往具有较强的片面性和偏激性。他们过分关注社会腐败的一面,怀疑和否定社会积极的一面。因此,教师在引导学生进行课堂讨论和进行总结时,要能够运用马克思主义基本原理对学生提出的观点进行论证或批判,以平等的态度与学生共同探讨,坚持正面教育,以理服人,使学生能够真正受到启发,真正能够解决思想中存在的种种困惑,切实提高学生运用马克思主义基本原理观察世界,分析问题的能力。

2.案例教学与理论讲授相结合以凸显科学性 案例教学固然很重要,但案例教学并不能完全取代理论教学。教师对相关原理的重点和难点进行适当讲授,是教学中不能缺少的。案例中往往同时包含多个理论知识点,分析时比较复杂,难以理出头绪,这就要求教师既要把理论知识讲透,又要能指导学生运用理论去分析实际。所以,学生如果没有必要的理论基础作为铺垫,案例讨论就达不到理想的效果。在理论教学与案例教学的关系中,理论教学是案例教学的基础,案例教学是理论教学的运用。因此,教师可适当地调整教学内容,精讲知识;同时,根据理论教学的内容选择合适的案例,使二者相辅相承达到良好的教学效果。课堂理论讲授应当是诱导式和启发式的,应该与案例讨论结合起来。

3.授课方式与授课内容相结合以提高有效性

在教学中除了有好的案例之外,还必须恰当运用所选案例。运用案例进行教学,要根据不同的内容、不同的对象来决定运用方式,归纳起来大致有以下三种。

①引子悬念式:上课前用案例引出要讲授的某一具体原理,给学生留下悬念,然后教师既可以结合案例讲授理论,也可以让学生听完理论,自己去分析判断案例,教师再做总结。

②简单列举式:是教师在系统讲授了某一理论后,举

一、两个案例,用刚讲过的理论去分析解剖,也可请学生先分析、发表意见,教师再做总结。这种方式

虽然层次不高,但灵活简便,节约时间,适合于马克思主义哲学各部分教学内容和学生人数较多的班级。

③课堂讨论式:教师把选择好的案例事先发给学生,并提出思考题,指定参考书目,由同学各自阅读、分析、思考,并将分析的意见写成发言提纲,在课堂上开展对案例的分析、讨论和辩论。例如在讲哲学对立统一规律时,引入取消中医的观点,请同学们分析评价。这种方式让学生以主角的身份积极参与到教学活动中,使其在民主自由的气氛中交流彼此的看法,学生学习的兴趣大大提高。这种方式花费的时间和精力都比较多,适用于讲授教学重点内容,并且在人数较少的班级应用容易取得好的效果。

案例教学法强调“授之渔而非授之鱼”,对于思想政治理论课教师,不只是传授学生课本的知识,更重要的是教导学生思考的过程,学生需要的不只是成堆的理论知识,更需要的是能够活用理论知识的能力;教师应赋予学生思考及行动的自由,发展学生个人的分析能力,提高学生倾听和沟通的能力,增进学生独立思考的能力。总之,在独立学院思想政治理论课教学中,对案例选择与解释的研究具有深远的意义。

第三篇:学习心得《面向对象》

面向对象课程学习心得

这学期的面向对象课程对我来说是收获匪浅的一门课。通过老师课件的讲解,自己一些相关书籍的阅读和实践作业的完成,逐步对课程有了由浅及深的认识。

面向对象(Object Oriented,OO)是一门以实践为主课程,课程中可以分开两块OOA(面向对象系统分析)和OOD(面向对象系统设计)。OOA(面向对象系统分析)主要内容: 研究问题域和用户需求,运用面向对象的观点和原则发现问题域中与系统责任有关的对象,以及对象的特征和相互关系.OOA不涉及针对具体实现采取的设计决策和有关细节,独立于具体实现的系统模型。是一个完整确切反映问题域和用户需求的系统模型。OOA的优势:复用、可扩展、可维护性、弹性。

OOD(面向对象系统设计):以OOA模型为基础,按照实现的要求进行设计决策,包括全局性的决策和局部细节的设计,与具体的实现条件相关。OOD的步骤:细化重组类→细化和实现类之间的关系,明确其可见性→增加属性,指定属性的类型和可见性→分配职责,定义执行每个职责的方法→对消息驱动的系统,明确消息传递的方式→利用设计模式进行局部设计→画出详细的类图和时序图。

面向对象的分析与设计方法将致力于解决传统软件研发过程中由于软件模块化结构化程度不高带来的软件重用性差、软件可维护性差、开发出的软件不能满足用户需要等方面问题。面向对象的概念包括:对象、对象的状态和行为、类、类的结构、消息和方法。对象概念将包含对象唯一性、抽象性、继承性、多态性的重要特征。面向对象的要素包含:抽象、封装性、共享性三方面。

在设计模式的研究过程中,我们组选择的是迭代器(Iterator)的设计模式研究。完成设计研究后,我对迭代器的设计模式有了更为深刻的理解。迭代器(Iterator)提供一个方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。并了解到迭代器设计模式一般在以下三类场合使用较多。

 访问一个聚合对象的内容而无需暴露它的内部表示。 支持对聚合对象的多种遍历。因为遍历状态是保存在每一个迭代器对象中的。

 为遍历不同的聚合结构提供一个统一的接口。根据实现方式的不同,效果上会有差别。同时还简化了容器的接口。但是在java Collection中为了提高可扩展性,容器还是提供了遍历的接口。在面向对象的软件设计中,我们经常会遇到一类集合对象,这类集合对象的内部结构可能有着各种各样的实现,但是归结起来,无非有两点是需要我们去关心的:一是集合内部的数据存储结构,二是遍历集合内部的数据。面向对象设计原则中有一条是类的单一职责原则,所以我们要尽可能的去分解这些职责,用不同的类去承担不同的职责。Iterator模式就是分离了集合对象的遍历行为,抽象出一个迭代器类来负责,这样既可以做到不暴露集合的内部结构,又可让外部代码透明的访问集合内部的数据。

在Java Collection的应用中,提供的具体迭代器角色是定义在容器角色中的内部类。这样便保护了容器的封装。但是同时容器也提供了遍历算法接口,你可以扩展自己的迭代器。至于迭代器模式的使用。客户程序要先得到具体容器角色,然后再通过具体容器角色得到具体迭代器角色。这样便可以使用具体迭代器角色来遍历容器了。

OOA和OOD之间没有明显的界限。OOA与OOD的不可分割性正好说明了OO思想的强大,即软件过程阶段的无缝连接,在交流与沟通中不会产生鸿沟,这是相对结构化思想的好处,因为从功能模块到某块详细控制逻辑设计两者之间的联系不是十分紧密,需要分析人员与设计人员的再沟通。

通过课程的学习与实践,对面向对象的理念,以及相关方法,设计模式有了更为深刻的理解与掌握。针对面向对象的分析与设计课程的授课内容及方法,我个人觉得对我还是有不少的帮助和 提高。结合自己的工作,虽然与开发接触的比较少,但是在运维过程中,如果能了解开发原理,结合实际的工作,会对一些源代码的分析能力以及工作效率的提高起到明显的帮助作用。

第四篇:《面向对象程序设计》教学大纲

《面向对象程序设计》教学大纲

课程名称:信息内容安全 课程代码:042504 总 学 时:64 学

分:2

课程类型:专业必修课 适用专业: 信息安全专业 制 订 人:徐雪飞 审 定 人:肖

文 制订日期:2015年3月

《面向对象程序设计》教学大纲

一、课程性质、目的和任务

C#语言是.NET平台上的核心开发语言,具有简单易学、类型安全、完全面向对象等特性,是一门面向现代软件工程的主流程序设计语言。本课程系统地介绍C#语言的结构化设计、面向对象、泛型、商业开发等功能要素,使学生在掌握程序设计的基本方法和技巧,培养利用计算机解决实际问题的能力,以满足专业课应用和继续学习的需要。

二、教学基本要求

通过学习本课程,要求学生能够熟悉C#语言的语法和类型系统,掌握面向对象程序设计和泛型程序设计的基本方法,并具有商业应用开发的基本能力,能灵活地使用C#语言及Visual Studio.NET开发环境解决一般性编程问题。

三、教学内容

1、绪论(教学2学时,上机2学时)

教学内容:

(1).NET技术和框架结构简介(2)C#语言概貌

(3)面向对象的基本概念

教学目的:使学生对.NET平台和C#有一个综合性的了解。

2、C#语法基础(教学6学时,上机4学时)

教学内容:(1)数据类型(2)值和方法(3)表达式(4)控制语句

教学目的:使学生基本掌握C#语言的类型系统和基本语法结构。

3、类和继承(教学4学时,上机4学时)

教学内容:

(1)类的数据成员和各种函数成员(2)继承和多态(3).NET常用类型(4)接口与实现

教学目的:使学生进一步掌握类型的定义和使用方法,掌握.NET类库中一些典型类的用法;深入理解继承和多态性的概念,从而掌握面向对象软件可重用性的关键技术。

4、Windows窗体界面(教学2学时,上机2学时)

教学内容:

(1)Windows Form编程技术(2)WPF编程技术

(3)绘图、动画和媒体 教学目的:使学生掌握Windows程序界面设计的基本要素,能够使用Windows Form和WPF编程技术开发交互式图形界面应用程序。

5、泛型(教学4学时,上机2学时)

教学内容:

(1)泛型的定义与使用(2)元组和可空类型的用法(3)泛型集合与循环遍历

(4)匿名方法和Lambda表达式

教学目的:使学生掌握泛型程序设计的基本概念,能够利用类型抽象和操作抽象开发出高可适的软件程序。

6、异常处理(教学1学时)

教学内容:

(1)C#异常处理结构

(2)主动引发异常和自定义异常

教学目的:使学生能够通过异常处理来提高程序可靠性。

7、文件操作(教学1学时,上机1学时)

教学内容:

(1)驱动器、目录和文件(2)文件流和数据流

教学目的:使学生掌握在C#程序中进行磁盘文件存取的基本技术。

8、数据库访问(教学2学时,上机1学时)

教学内容:

(1)ADO.NET联机数据访问(2)ADO.NET脱机数据访问

教学目的:使学生掌握C#程序中进行数据库存取的基本技术。

9、综合练习(教学2学时,上机8学时)教学内容:

(1)进程和线程

(2)ASP.NET网络程序设计

(3)采用案例驱动的方式,综合运用C#编程技术开发较为完整的软件程序。教学目的:提高学生软件设计的综合能力。

五、教学方法与手段

讲授法、讨论法、多媒体教学、实验教学。

六、考核方式

考试成绩占70%,平时成绩占30%。闭卷考试。

七、推荐教材和教学参考书

材:《C#程序设计基础》第3版,郑宇军,石海鹤,王卫红,清华大学出版社,2014年。参考书:

1、《C#应用开发与实践》,曾宪权、李梅莲 等,清华大学出版社,2015年

2、《C#编程实战宝典》,付强、丁宁 等,清华大学出版社,2014年。

第五篇:面向对象程序设计教学大纲

面向对象程序设计(专业限选课)Object-Oriented Programming 【课程编号】XZ26175 【学分数】3 【学时数】60=38+22

【课程类别】专业限选 【编写日期】2010.3.30 【先修课程】C语言程序设计、计算机应用基础

【适用专业】通信工程

一、教学目的、任务

通过学习,使学生深刻理解和领会面向对象的基本思想和基本特征,掌握面向对象程序设计语言C++语言的基本概念、基本语法以及面向对象程序设计的基本方法;使学生养成面向对象的编程思维习惯。

二、课程教学的基本要求

1.理解面向对象的基本概念和使用面向对象技术进行程序设计的基本思想 2.能比较熟练地用C++语言进行一般面向对象的程序设计

3.初步掌握面向对象编程环境Visual C++的使用

三、教学内容和学时分配(2 + 5 + 14 + 9 + 12 + 7 + 6 + 5 = 60)第一章 面向对象程序设计概述 2 学时(课堂讲授学时2)主要内容:

1.什么是面向对象程序设计 2.对象与类 3.封装 4.继承性 5.多态性

6.面向对象程序设计的语言 教学要求:

了解什么是面向对象程序设计;掌握对象和类的基本概念;理解面向对象程序设计的基本特征。其它教学环节:

安排课外了解面向对象程序设计方面的基本概念。第二章 C++概述 5学时(课堂讲授学时2+课程实验学时3)主要内容:

1.C++的起源和特点 2.C++源程序的构成

3.C++在非面向对象方面的一些特性 教学要求:

cin和cout的使用;new和delete的运算符的使用;函数的重载;带缺省参数的函数;引用; VC++的使用。其它教学环节:

实验1: C++程序设计基础练习。实验目的和要求:

1.掌握C++程序的基本格式和规范,学会编写简单的C++程序。2.掌握C++程序结构的特点。

3.熟悉C++程序基本的输入输出操作。

4.掌握C++数据类型常量和变量以及修饰符的使用方法。5.熟悉作用域运算符的功能和基本使用方法。6.掌握C++内存的动态分配和释放方法。7.理解引用的概念,掌握引用的使用方法。

第三章 类和对象 14学时(课堂讲授学时8+课程实验学时6)主要内容:

1.类与对象的基本概念 2.构造函数与析构函数 3.对象数组与对象指针 4.向函数传递对象 5.静态成员 6.友元

7.类对象作为成员 8.常类型 教学要求:

类的声明;对象定义;对象的成员的访问。访问属性的理解和运用;构造函数和析构函数的定义;对象数组的定义和使用;this的指针的理解和使用;类的成员类型为其他类时如何理解和使用;静态成员的理解和运用。提供友元机制的目的;友元声明方法;提供常类型机制的目的;各种不同的常类型运作方式。其它教学环节:

实验2:类和对象。实验目的和要求:

1.掌握类、类的数据成员、类的成员函数的定义方式。2.理解类成员的访问控制方式。

3.掌握对象的定义和操作对象的方法。

4.理解构造函数和析构函数的定义与执行过程。5.掌握重载构造函数的方法。6.了解拷贝构造函数的方法。实验3:对象数组和对象指针。实验目的和要求:

1.掌握对象数组的定义和使用方法。

2.理解对象指针的概念,学会用指针引用对象。3.了解this指针的工作方式。

4.掌握静态数据成员和静态成员函数的基本使用方法。5.理解友元与友元函数的作用,掌握其使用方法。

第四章 派生类和继承 9学时(课堂讲授学时6+课程实验学时3)主要内容:

1.派生类的概念

2.派生类的构造函数和析构函数 3.基类成员的访问 4.多重继承 5.赋值兼容规则 教学要求:

基类和派生类的基本概念;继承成员的访问规则;派生类构造函数和析构函数的运行规则;多重继承的基本概念;多重继承中同名二义性如何消除;引入虚基类的目的;继承类和派生类之间相互赋值规则用。

其它教学环节:

实验4:派生类与继承。实验目的和要求:

1.理解类的继承的概念,能够定义和使用类的继承关系。2.掌握派生类的声明和定义方法。

3.掌握公有派生和私有派生的访问特性。4.学习虚基类在解决问题中的作用。

第五章 多态性 12学时(课堂讲授学时8+课程实验学时4)主要内容:

1.编译时的多态性与运行时的多态性 2.函数重载 3.运算符重载 4.类型转换 5.虚函数 教学要求:

多态的基本概念;实现运算符重载的方法(成员函数);实现运算符重载的方法(友元函数);静态联编和动态联编的基本概念;虚函数的作用;虚函数的运用。其它教学环节:

实验5:虚函数和多态性。实验目的和要求:

1.理解编译时的多态性和运行时的多态性。2.掌握运算符重载的基本方法。3.掌握虚函数的定义和使用方法。

第六章 模板 7学时(课堂讲授学时4+课程实验学时3)主要内容:

1.模板的概念

2.函数模板与模板函数 3.类模板和模板类 教学要求:

模板的基本概念;为什么要使用模板;函数模板和模板函数的基本概念;函数模板的声明和使用;类模板和模板类的基本概念。其它教学环节:

实验6:函数模板与类模板。实验目的和要求:

1.掌握函数模板及其声明方法。2.掌握模板函数及其生成方法。3.学习类模板的声明与使用方法。

第七章 C++的I/O流类库 6学时(课堂讲授学时3+课程实验学时3)主要内容:

1.C++建立类类库的目的 2.预定义类型的输入输出

3.用户自定义类型的输入和输出 教学要求:

掌握在各种情况下的<<和>>运算符的重载。其它教学环节:

实验7:I/O流类库。实验目的和要求:

1.掌握流及流类库的作用。

2.掌握流类库中常用的类及其成员函数的使用方法。3.掌握重载“<<”和“>>”的方法。

4.掌握控制输出宽度的函数width和setw。

5.掌握函数setosflags和resetiosflags设置和恢复对齐方式、精度、大小写等。

研究教学内容 5学时(课程讲解和讨论学时)

程序综合设计:按照面向对象程序开发的原则和方法,利用一个实例来讲解面向对象程序设计的整个过程,然后要求学生根据自己的开发经验进行分组讨论,从而帮助学生进一步理解和熟悉面向对象程序设计方法。

四、教学重点、难点及教学方法

重点:类和对象的基本概念;对象定义;对象的成员的访问。访问属性的理解和运用;构造函数和析构函数的定义;对象数组的定义和使用;this的指针的理解和使用。基类和派生类的基本概念;继承成员的访问规则;派生类构造函数和析构函数的运行规则。多态的基本概念;函数的重载。

难点:多重继承;虚函数;模板。

教学方法:课堂授课采用多媒体教学和分组讨论的方法,实验采用任务驱动方式。通过未来愿景描述和学以致用的方法来提高学生的学习兴趣,通过分组交流和师生积极互动的方式提高学生学习本门课程的学习能力。

五、考核方式及成绩评定方式:考试

六、教材及参考书目

推荐教材:

[1] 《C++面向对象程序设计》,陈维兴,林小茶,清华大学出版社,第2版,2004 参考书:

[1] 《C++面向对象程序设计习题解析与上机指导》,陈维兴,清华大学出版社,2003 [2] 《C++程序设计基础》,周霭如,电子工业出版社,2003 [3] 《C++语言程序设计》,郑莉,清华大学出版社,2005 修(制)订人: 审核人:

2010年 3 月30

下载面向对象设计的基本原则和实践建议word格式文档
下载面向对象设计的基本原则和实践建议.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    《面向对象程序设计》教学大纲

    《面向对象程序设计》教学大纲 课程名称:面向对象程序设计 英文名称:Object Oriented Programming) 学分:2 总学时:36 实验(上机)学时: 8 开课专业:电子商务专业 一、 本课程的性质......

    面向对象程序设计心得体会

    这次课程设计让我收获到很多,上个学期我们也有过课程设计,但是我们都是从网上下一个程序,连带着报告,看一遍程序,修改修改报告,然后就直接去答辩,都是糊弄糊弄就过去了,自己根本就没......

    面向对象知识总结

    一、 封装 1.类本身就是一个封装单元 2.实现:A属于私有化;B共有的方法提供给外界访问;C信息隐藏,安全,对外提供清晰的接口 二、继承1.代码共有,方便维护扩展 2.更符合人类遇到的问......

    C#面向对象学习心得

    一、封装这是一种隐藏信息的特性。拿本节引例来说,类CalculateDate 将数据结构与算法隐藏在类的内部,外界使用者无需知道具体技术实现细节即可使用此类。封装这一特性不仅大大......

    PHP中面向对象设计的经验总结

    PHP中面向对象设计的经验总结 你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 。 ----- Arthur J.R......

    “面向对象程序设计”课程教学设计探索

    摘要:“面向对象程序设计”是大多数高等院校计算机专业的一门专业基础课,课程的教学效果直接影响学生对专业后续课程的学习。通过良好的教学设计可以将面向对象的思想和技术......

    重庆理工大学实践教学大纲(实习设计)04 面向对象程序设计 讲解

    《面向对象程序设计(C#)》课程设计大纲 开课单位:计算机科学与工程学院 开课学期:第1学年春季学期 学 分:1学分 学 时:16学时(1周) 适用专业:网络工程(0309) 一、课程设计的目的与意义......

    面向对象程序设计实习报告

    《面向对象程序设计》实习报告 班级:电子商务 学号:xx 姓名xx 指导教师: 实习时间:2011.12.26-2012.1.6 一、 实习目的 经过两个周的面向对象程序设计的实习,让我再次复习了SQL......