版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象分析和设计初步2023-2026ONEKEEPVIEWREPORTINGWENKUDESIGNWENKUDESIGNWENKUDESIGNWENKUDESIGNWENKU目录CATALOGUE面向对象基本概念面向对象分析过程面向对象设计原则面向对象设计模式简介UML统一建模语言基础实践案例:简单系统面向对象分析和设计面向对象基本概念PART01对象是现实世界中的实体在计算机世界中的抽象表示,它包含了描述实体的属性和行为。类是具有相同属性和行为的对象的集合,它定义了创建对象的模板或蓝图。对象与类封装与继承封装是将对象的属性和行为封装在一起,形成一个独立的单元,对外隐藏内部实现细节,只提供必要的接口与外部交互。继承是一种使已有的类无需改变就能复用的手段,它允许在已有类的基础上创建新类,新类可以继承已有类的属性和行为,并可以添加新的属性和行为。多态性消息传递机制消息传递机制:是面向对象编程中实现对象之间交互的一种方式。通过发送消息来请求对象执行某个操作或返回某个值。消息传递机制使得对象之间能够相互通信和协作,实现复杂的业务逻辑。面向对象分析过程PART02需求获取与整理010203对需求进行分类和整理,形成需求文档确定系统范围和边界与用户交流,明确系统需求识别对象和类,定义类的属性和方法构建类图,描述系统的静态结构确定类之间的关系,如继承、关联、聚合等建立对象模型识别对象之间的交互和消息传递使用时序图描述对象之间的动态行为使用状态图描述对象的状态变化和响应事件010203建立动态模型建立功能模型01识别系统的功能和服务02使用用例图描述系统的功能需求构建功能模型,描述系统的功能结构和流程03面向对象设计原则PART03123一个类只应该有一个引起变化的原因。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。当需求变化时,众多职责耦合在一起,会影响复用性。单一职责原则软件实体应当对扩展开放,对修改关闭。在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会将错误引入原本已经经过测试的旧代码中,破坏软件系统中其他部分与旧代码之间的设计。当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。开闭原则里氏替换原则子类型必须能够替换掉它们的父类型。一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且它察觉不出父类对象和子类对象的区别。在软件中将一个基类对象替换成它的子类对象,程序将不会产生任何错误和异常,反过来则不成立。010203高层模块不应该依赖低层模块,它们都应该依赖抽象。抽象不应该依赖细节,细节应该依赖抽象。针对接口编程,不要针对实现编程。依赖倒置原则面向对象设计模式简介PART0401将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式(Builder)02用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式(Prototype)03保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式(Singleton)创建型模式适配器模式(Adapter)将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。桥接模式(Bridge)将抽象部分与实现部分分离,使它们都可以独立地变化。组合模式(Composite)将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和复合对象的使用具有一致性。结构型模式行为型模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。策略模式(Strategy)定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。状态模式(State)允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。观察者模式(Observer)UML统一建模语言基础PART05用于描述系统中的类、类的内部结构以及类之间的关系。主要元素包括类、接口、属性、操作等。是类图的实例,显示类图中所描述的类的对象实例及其关系。对象图用于表示在某一时刻系统的静态结构。类图与对象图对象图类图显示对象之间的动态合作关系,强调对象之间消息发送的顺序。顺序图可以表示用例的行为顺序,当执行一个用例行为时,其中的每条消息对应一个类操作或状态机中引起转换的触发事件。顺序图描述对象间的协作关系,协作图跟顺序图相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。协作图顺序图与协作图状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。活动图显示系统中从一个活动到另一个活动的流程。活动图用于表示在系统中进行的各种活动的流程,包括活动的顺序、分支、循环、同步等。状态图与活动图从用户角度描述系统功能,并指出各功能的操作者。用例图是系统功能的蓝图,用于捕获系统、子系统和类的功能需求。用例图显示系统的物理部署情况,包括处理器、设备、网络等元素的配置和连接情况。部署图用于表示系统的物理架构,描述系统如何部署到硬件环境上。部署图用例图与部署图实践案例:简单系统面向对象分析和设计PART06案例名称简单图书馆管理系统背景描述该系统用于管理一个小型图书馆的图书、读者和借阅记录等信息,提供基本的图书借阅、归还和查询功能。案例背景介绍识别对象在图书馆管理系统中,可以识别出图书、读者、借阅记录等对象。定义类根据识别出的对象,可以定义相应的类,如Book类、Reader类、BorrowRecord类等。确定属性每个类都有自己的属性,如Book类有书名、作者、出版日期等属性;Reader类有读者姓名、借书证号等属性;BorrowRecord类有借阅日期、归还日期等属性。定义方法每个类都有自己的方法,如Book类有添加图书、查询图书等方法;Reader类有添加读者、查询读者等方法;BorrowRecord类有借阅图书、归还图书等方法。01020304面向对象分析过程展示使用UML类图描述系统中的类、属性和方法,以及它们之间的关系。设计类图使用UML时序图或协作图描述系统中对象之间的交互过程,如借阅图书的流程。设计交互图设计数据库表结构,存储图书、读者和借阅记录等信息。数据库设计设计系统界面,提供用户操作界面和数据显示界面。界面设计面向对象设计过程展示通过面向对象分析和设计,可以将复杂系统分解为简单的对象和类,降低系统设计和实现的难度。在面向对象设计过程中,需要注重类的封装性、继承性和多态性等特性的运用,提高系统的可维护性和可扩展性。在实践案例中,可以进一步探讨如何运用面向对象的思想和方法进行复杂系统的分析和设计。在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度钢筋原材料采购合同5篇
- 人教版九年级化学第八单元复习课件
- 2024年度政府采购服装类协议3篇
- 公司员工半年工作总结
- 2024年度定龙水库水上乐园设备采购合同2篇
- 护理文件首页书写规范
- 小讲课糖尿病护理
- 灾难现场医疗救援
- 菏泽学院《国产影视鉴赏》2022-2023学年第一学期期末试卷
- 《夜视技术及其应用》课件
- 村口修建公墓申请书
- 2023南方国家电网招聘笔试参考题库(共500题)答案详解版
- 2023-2024学年广东省深圳市育才二中九年级(上)期中物理试卷
- 2023秋季学期国开电大本科《管理英语3》在线形考(单元自测1至8)试题及答案
- 中建盘扣式落地卸料平台施工方案
- 浅议中国特色社会主义经济建设
- 贫血的中医治疗:中药在贫血治疗中的应用
- 狮子王-中英文-剧本台词(全)
- 印刷品价目表
- 世界旅游业智慧树知到课后章节答案2023年下临沂大学
- (完整版)医疗器械网络交易服务第三方平台质量管理文件
评论
0/150
提交评论