- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
03—2—面向对象程序的设计高级
第3章 面向对象程序设计高级
郭建宏
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
椅子大戰
從前,有一間軟件小鋪,裡面有兩個程序員被指派去設計一個程序。
壞心的老闆娘兼項目經理要求兩個人比賽,贏的人可以坐上象徵身份地位的AeronTM寶椅。
程序開發高手阿珠和面向對象的信徒阿花兩個人都相信自己贏的可能性很大。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
需求
在图形接口中画出四方形(squre),圆形(circle)和三角形(triangle),图形需要顺时针绕中心旋转,同时输出AIF音效文件。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
阿珠是怎樣做的?
和以往一样,阿珠准备好开始设计重要的程序。没几下就写出了rotate和playSound方法。
rotate() {
// 绕中心旋转360度。
}
playSound() {
// 播放aif文件。
}
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
阿花是怎樣做的?
阿花分别为三个形状各写出一个类。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
新的需求(一)
前面的形状需要加上阿米巴原虫(Amoeba)形状。
用户点选时也是旋转并播放.hif的声音文件。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
阿珠该怎样做?
原来的rotate程序还可以用。
但是playSound就得要修改。
虽然修改的幅度不大,但是阿珠实在不想去碰已经测试过的程序代码。他应该很清楚,不管项目经理怎么保证,需求就是会不停的改。
playSound(shapeNum) { // 参数用来标识传入的是否是amoeba图形
// 如果不是阿米巴形状,则播放.aif文件。
// 如果是则播放.hif文件
}
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
阿花該怎樣做?
阿花则写出一个新的类。
面向对象让他最喜欢的其中一点就是有时不需改动已经测试好的程序就可以达成新的目标。
面向对象的适应性和可扩展性让他面对修改时不会觉得太痛苦。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
新的需求(二)
阿米巴虫在旋转的时候需要以给定的作为原点旋转。
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.
阿珠該怎樣做?
阿珠最好还是帮rotate程序加上轴心点的参数。这样就有一堆程序要改。
本来已经测试好的东西全部又得重来一遍。
rotate(shapeNum, xPt, yPt){
// 如果不是阿米巴,则绕中心旋转。
// 否则以xPt和yPt作为旋转中心旋转。
}
Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Cop
您可能关注的文档
最近下载
- 2025《几何画板在数学教学中的应用研究文献综述》1800字.docx VIP
- 湘美版高中美术绘画 奏响色彩的旋律(共28张PPT)(内嵌视频).pptx VIP
- 规范《DLT555-2004-气体绝缘金属封闭开关设备现场耐压及绝缘试验导则》.pdf VIP
- 2025巧用几何画板开拓数学思维作一个角等于已知角教学思考.docx VIP
- 标日初级第1课练习.doc VIP
- Unit4EatwellSectionA2a-2e英文版教案人教版(2024)七年级英语下册.docx
- 教学经验分享.ppt VIP
- 2025届高考数学复习备考策略课件.pptx VIP
- 2013年考研英语一真题解析.pdf VIP
- 第2课 教师节快乐(教学设计)2025二年级上册道德与法治 - 副本.docx
文档评论(0)