面向对象设计:多态性在System Analysis & Design中的应用
需积分: 33 99 浏览量
更新于2024-08-20
收藏 3.65MB PPT 举报
在"多态性的表现-System Analysis and Design(系统分析与设计)_04.01"中,本文探讨了面向对象技术在系统分析与设计中的应用,特别是在软件开发方法论上的转变。传统的软件工程方法如结构化分析与设计(SA+SD+SP)因其结构化过程设计的局限性,在面对用户需求变化时面临软件重用性差、可维护性低等问题。相比之下,面向对象方法学(OOA+OOD+OOP)强调以自然、人类思维方式来分析和设计系统,通过类(class)、对象(object)、关联(association)和聚集(aggregation)等概念,提高了软件的灵活性、复用性和维护性。
1. 面向对象方法的优势:OOSD(面向对象系统分析与设计)允许开发者模拟现实世界的逻辑,使得软件更易于理解和维护。它通过对象的抽象和封装,减少了对过程的依赖,从而更好地适应需求变化。
2. 类和对象的概念:类是对象的蓝图,定义了一组共享属性和行为。对象则是类的实例,拥有其自身的状态和行为。类和对象的使用体现了面向对象的核心理念,即万物皆对象,相似特征的对象被归类到同一个类中。
3. 面向对象软件工程:OOA(面向对象分析)、OOD(面向对象设计)和OOP(面向对象编程)阶段,构建的程序基于类和对象的组织结构,这有助于提高软件的可扩展性和可重用性。
4. 类与关联:类之间的关联可以是单向或多向,反映现实中对象之间的交互关系。关联的多重性指一个类的对象可以关联到另一个类的不同数量的对象,如一个教师可以关联到多个学生。
5. 类的使用:在编程中,类不仅用于分类,还是创建对象的模板。通过`classTree`这样的例子,我们可以看到类在代码中的实际应用,它指导对象的实例化和组织。
6. 面向对象的灵活性:多态性是面向对象的重要特性,它允许同一种行为在不同的上下文中表现出不同的形式,增强了系统的灵活性。例如,不同的工厂类(如StarFactory、PentacleFactory等)都可能实现`build()`方法,但具体行为根据所创建的对象类型而变化。
总结来说,这篇文章深入剖析了面向对象技术如何通过类、对象和关联的概念改善系统分析与设计,以及在实际开发中的应用,特别是强调了多态性在解决复杂问题和提高软件质量方面的价值。
2015-08-29 上传
2011-06-26 上传
2018-12-19 上传
2022-08-04 上传
2021-03-18 上传
2021-03-16 上传
2022-04-30 上传
Pa1nk1LLeR
- 粉丝: 64
- 资源: 2万+
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫