- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.2面向对向程序设计.doc
面向对象程序设计
?
一、教学目标
让学生理解面向对象程序设计的思想。
二、 教材分析
这一部分利用“电子商务系统业务流程”,将结构化程序设计与面向对象程序设计的方法进行比较,让学生了解结构化程序设计为什么要发展到面向对象程序设计,更好地理解面向对象程序设计的思想,这是本章的重点。
三、教学方法及策略
用这两种程序设计方法设计同一问题,然后比较它们的优缺点。将结构化程序设计与面向对象程序设计进行比较,介绍面向对象程序设计的思想。
四、教学过?
活动过程 教师活动 学生活动 设计意图 兴趣激发 展示一个五子棋游戏。 体验游戏。 通过游戏激发学生的学习兴趣。 问题引入 问题:如果让你用结构化程序(面向过程)设计方法来编程实现五子棋游戏,解决思路是什么?参照书店销售管理系统。 思考并在教师引导下回答。 分析结构和程序设计的过程。 问题小结 总结结构化程序设计解决问题的思路:
(1)开始游戏;(2)黑子先走;(3)绘制画面;(4)判断输赢;(5)轮到白子;(6)绘制画面;(7)判断输赢;(8)返回步骤(2);(9)输出最后结果。把上面每个步骤分别用函数来实现,问题就解决了。 思考优缺点。 回顾结构化程序设计的思路。 总结特点 上述思路的特点:
(1)一个大的程序可划分为若干个模块,每个模块又可以继续分为更小的子模块,最终分出的模块能完成一个独立的功能,模块之间按层次关系进行组织。
(2)每个过程都要与数据库交互(棋盘数据库,五子棋规则), 如果要把这个五子棋游戏改为围棋游戏,那么五子棋的规则就分布在子程序的每一个角落,要改动还不如重写。 进一步体会结构化程序设计的特点。 找出结构化程序设计的优缺点,重点是缺点。 引入面向对象程序设计思想 问题:怎样解决上面的问题?
引入面向对象程序设计,介绍思路:
整个五子棋可以分为:(1)黑白双方,这两方的行为是一模一样的;(2)棋盘系统,负责绘制画面;(3)规则系统,负责判定诸如犯规、输赢等。第一类对象(玩家对象)负责接受用户输入,并告知第二类对象(棋盘对象)棋子布局的变化,棋盘对象接收到了棋子的变化就要负责在屏幕上面显示出这种变化,同时利用第三类对象(规则系统)来对棋局进行判定。 思考面向对象程序设计的优点。 引出面向对象程序设计。 分析面向对象程序设计的优点,与结构化程序设计进行比较 针对五子棋游戏,面向对象程序设计有以下优点:
(1) 同样是绘制棋局,这样的行为在结构化程序设计中分散在很多步骤中,很可能出现不同的绘制版本,因为通常设计人员会考虑到实际情况进行各种各样的简化。而面向对象的设计中,绘图只可能在棋盘对象中出现,从而保证了绘图的统一。
(2) 功能上的统一保证了面向对象程序设计的可扩展性。比如我要加入悔棋的功能,如果要改动面向过程的设计,那么从输入到判断到显示这一连串的步骤都要改动,甚至步骤之间的顺序都要进行大规模调整。如果是面向对象的话,只改动棋盘对象就行了,棋盘系统保存了黑白双方的棋谱,简单回溯就可以了,而显示和规则判断则不用顾及,同时整个对对象功能的调用顺序都没有变化,改动只是局部的。
(3) 如果要把这个五子棋游戏改为围棋游戏,只改动规则对象就可以了,五子棋和围棋的区别不就是规则吗?而下棋的大致步骤从面向对象的角度来看没有任何变化。 体会面向对象程序设计的优点。 让学生理解面向对象程序设计的思想。 总结 结构化程序设计是从功能入手设计的,即“现在做的是什么”。在实际设计中,用户的需求和软硬件条件是不断变化的,按照功能划分的模块必然是易变的和不稳定的,这样开发出来的模块可重用性不高。
面向对象程序设计从所处理的数据入手,以数据为中心来描述。数据相对于功能而言,具有更强的稳定性,因此,以数据为中心设计出的系统,具有较强的稳定性,模块可重用性也比较高。 理解两种设计方法的区别。 上升到理论高度,让学生对面向对象程序设计思想有个感性认识。 思考 Windows 操作系统之所以易学易用,在很大程度上、依赖于面向对象的程序设计技术。打开一个窗口,它就会在状态栏显示当前窗口内共有几个对象。思考讨论:在 Windows 中,还有哪些方面体现了面向对象程序设计思想? 课后思考。 联系实际,让学生更好地理解面向对象程序设计思想。可以在学完第四章以后,再与学生一起讨论。
文档评论(0)