- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
硕士课程: 面向对象的程序设计原理与技术.ppt
硕士课程:面向对象的程序设计原理与技术 首都师范大学 教育技术系 方海光 2008年9月 课程内容 软件工程基础 SE 面向对象软件工程 OOSE 面向对象分析与设计 UML 面向对象程序设计 C++ (选择)设计模式初步:Design Patterns (选择)SOA: Service Oriented Architecture (选择) AOP: Aspect-Oriented Software Development 项目设计实践: Web Application Development using UML Web2.0 PM Personal CV Name: 方海光 Phd/PostPhd Major: Computer Science/ET Research: Network E/ Educational-SE/ M-Learning Mail: fanghg@ Website: Mobile:教学安排 课堂讲授 12次/36学时 小组项目实践 3次/9学时 最终成绩计算方法: 出勤:20% 作业: 30% 项目: 50% 实践环境 Visio 2003(推荐) ROSE 2003 教材 面向对象分析设计与编程OOA/OOD/OOP/AOP(第二版) 作者:吴炜煜 出版社:清华大学 出版日期:2007-1-1 ISBN:730214120 定价: 27 元 参考资料 / / / / / /developerworks/cn/rational/r-uml/ 项目小组-分组 20分钟: 每组4-5人,推选一名作为组长。 小组讨论形成本组目标系统/平台的内容,建议为Web应用系统。 由小组组长介绍本组成员及本组项目内容简介。 注意:各组项目最终只完成设计工作,不需要实现,可理解为外包完成。 第 0章 面向对象程序设计概述 本章主要内容 程序设计的基本方法 结构化程序设计 面向对象程序设计 面向对象的软件工程 UML 计算机设备的使用特点 硬件是计算机的“躯体”,软件是计算机的“灵魂”。没有软件的支持,就没有硬件的生命力。 计算机软件 软件的三个要素: 能够让计算机按照人们的意愿完成各种操作的指令序列,即程序; 用来组织操作对象的数据结构; 描述程序设计过程的文档。 计算机程序 计算机的工作是用程序来控制的 程序是指令的集合。 指令是计算机可以识别的命令。 机器语言与汇编语言 由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。 计算机发展的初期,软件工程师们只能用机器语言来编写程序。这一阶段,在人类的自然语言和计算机编程语言之间存在着巨大的鸿沟。 汇编语言将机器指令映射为一些可以被人读懂的助记符,如ADD、SUB等。 此时编程语言与人类自然语言间的鸿沟略有缩小,但仍与人类的思维相差甚远。因为它的抽象层次太低,程序员需要考虑大量的机器细节。 高级语言 高级语言屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定涵义的数据命名和容易理解的执行语句。这使得在书写程序时可以联系到程序所描述的具体事物。 面向对象的语言 出发点: 更直接地描述客观世界中存在的事物(对象)以及它们之间的关系。 特点: 是高级语言。 将客观事物看作具有属性和行为的对象。 通过抽象找出同一类对象的共同属性和行为,形成类。 通过类的继承与多态实现代码重用 面向对象的语言 优点: 使程序能够比较直接地反映问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。 几种编程语言(编程工具) ◆ C语言(面向过程语言) ◆ C++ ◆ Delphi ◆ VB, VC ◆ JAVA ◆ C # ◆ ASP 软件危机 软件危机主要表现在以下几个方面: 软件系统急剧膨胀 软件的复杂程度呈指数上升 软件的可靠性不能控制 几乎不可能的软件管理和维护 解决软件危机的途径 程序是什么?软件是什么?怎样保证程序的绝对可靠? 一场对程序本质的研究导致goto 之争 从理论上无法证明基于任意赋值、任意goto的程序是正确的。 程序测试只能证明程序有错,不能证明程序无错。 出路 - 结构化程序程序设计 结构化程序设计 取消goto! 只允许顺序、分支、循环三种结构组成结构化程序。 每一种结构只能一个入口,一个出口。 设计重于编码,分析重于设计。 自顶向下,逐步求精。 易编程、易维护、提高了软件开发效率和质量 结构化程序设计 解决软件危机的途径-软件工程 鉴于手工作坊式的开发与硬件不成比例,以及结构化的成功经验 -以工程化的方法开发软件。 为设计、制造软件产品,要定出规程、规范和标准,有了规范和标准,就可以制造用于设计、开发、管理、测试软件的工具。 软件工程时代 软件
文档评论(0)