- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于内部视角C面向对象教学实践
基于内部视角C面向对象教学实践
[摘要] 针对C++面向对象教学中的若干难点,创新地引入了基于计算机内部视角的教学方法,根据课程中不同的内容,应用了包括汇编、虚函数表等内部实现技术,从而使学生了解了相关内容的实现机理,掌握相关知识,同时,也突破了为教语言而教语言的限制,起到了较好地教学效果。
[关键词] C++ 面向对象教学 内部视角
一、概述
面向对象程序设计是计算机专业学生的重要基础课,绝大多数高等院校都以C++作为面向对象程序设计这门课程的教学语言。应该看到,面向对象技术的实现是有着严密的技术体系结构的,教学的过程,也是这一体系结构向学生逐步展示,让学生逐步理解并掌握的过程。但在具体的教学过程中,却有着很多的概念和方法,十分难以理解和掌握。其中,有些内容,甚至连教科书都出现自相矛盾的情况。如何采用更为有效的教学方法,避免出现类似的情况,实现良好的教学效果,是一个需要重点关注的问题。另一方面,计算机语言类课程,作为计算机专业课程最基础的课程,在教学中,由于开课一般先于其他专业课程,很难将其他专业课程的内容与当前课程内容相结合,容易陷入为教语言而教语言的境地。因此,采用何种方式,既能让学生容易理解语言中的难点,又能突破语言教学本身的限制,这是计算机语言类课程教学所面临的一个重大问题。
在教学准备过程中,我们对C++语言的难点进行了深入地分析,发现这些内容往往都有这样的特点,即单纯从C++语言本身,很难甚至无法诠释其技术原理,因此不引入新的知识,就无法让学生了解这些技术的实现原理,做到不仅“知其然”,而且“知其所以然”。因此,在教学过程中,我们提出采用基于内部视角的教学方法,在相关知识的教学过程中,引入了计算机内部实现的技术细节,在并不增加学生知识量的同时,通过说明技术的实现过程,使学生了解相关的技术原理,从而在掌握相关概念和方法的同时,加深对面向对象技术的了解和认识,突破语言教学本身所受的限制,为其他的相关专业课的学习打下较好的基础。
二、基于内部视角的教学方法论
所谓基于内部视角的教学方法,是在计算机程序设计语言的教学过程中,适当地引入包括汇编、编译、链接、调试和运行等相关技术实现的内容,从而使学生能够对一个程序从编辑到编译,乃至运行等各个环节中,计算机内部组织结构和运行过程的方法,有一个正确的认识。
显然,该方法对培养一名专业的程序员是十分有益的,这方面的内容,也是一名专业程序员所必须具备的。但该教学方法在使用上还有着很大的不确定性,主要包括:
(1)程序设计语言本身的限制。由于不同的程序设计语言在计算机体系中所处的层次不同,因此,这一方法的实施有着本质的不同。例如,象VB.Net、C#等语言,由于建立在.Net框架基础之上,技术实现细节复杂,因此较难采用此方法;而对于汇编语言来说,内存组织等相关技术内容,则是实践教学中的重要内容。对于象C和C++这样的中间语言来说,如何把握,则要根据教学内容进行取舍;
(2)引入程度的把握。计算机内部实现的技术细节有着先天的难度,实施中必须考虑学生的知识水平和结构,把握引入的程度。
我们认为,基于内部视角的教学方法在以C++为编程语言的面向对象程序设计教学中,应该在如下方面引入:
(1)单纯以C++语言无法完美解释的相关概念、技术等;
(2)作为学生选学的提高内容;
(3)实践教学环节的组成和补充。
在引入的内容方面,应遵循以下原则:引入的内容对学生目前的认知水平和知识结构来说,不会存在困难。
我们以若干实例来说明基于内部视角的教学方法的应用。
实例1:继承类与基类构造函数的调用顺序
在这一内容方面,教材[1]认为,派生类对象的构造函数调用顺序是:基类构造函数先调用,派生类函数后调用。并用如下程序的输出来佐证。
//功能:演示继承关系中基类与派生类的构造函数与析构函数的调用次序。
1 #include
2 class BASE {
3 public:
4 BASE()//构造函数
5 {
6 cout Constructing base object.\\n;
7 }
8 ~BASE()//析构函数
9 {
10 cout Destructing base object.\\n;
11 }
12 };
13
14 class DERIVED: public BASE {
15 public:
16 DERIVED()//构造函数
17 {
18 cout Constructing derived object.\\n;
19 }
20
您可能关注的文档
- 基于关系相似度计算实体关系分类研究.doc
- 基于关系数据库高校成绩数据关联规则挖掘.doc
- 基于关系网模型Agent联盟形成策略.doc
- 基于关系股权结构与公司价值研究.doc
- 基于关系营销视角美国大学网络形象建设研究.doc
- 基于关系营销电力企业营销网络模式构建.doc
- 基于关系营销电信企业顾客满意战略.doc
- 基于关系视角下幼儿教师共同体审视与创建.doc
- 基于关系质量会展客户关系维护研究.doc
- 基于关系资本财务研究.doc
- 2025年生物医药CDMO行业项目交付周期分析报告.docx
- 《2025年商业航天融资深度分析报告:投资热点与资本偏好解读》.docx
- 2025年智能门锁生物识别算法的数据隐私保护策略研究报告.docx
- 2025年工业废水处理药剂技术效率提升与成本优化报告.docx
- 《2025年新能源车电池性能与保值率深度分析》.docx
- 深度解析(2026)《YBT 4993-2022炭素材料摩擦磨损性能试验方法》.pptx
- 2025年白酒行业绿色生产与环保标准报告.docx
- 2025年旅居养老行业刚需趋势候鸟式服务配套挑战.docx
- 2025年智能健身器材市场增长与用户粘性分析报告.docx
- 2025年药师健康科普博主合作模式研究.docx
原创力文档


文档评论(0)