还剩31页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
面向对象设计方法面向对象设计方法是一种用于软件开发的强大工具,它帮助我们构建可维护、可扩展和可复用的系统面向对象设计简介抽象封装从具体事物中抽取出共同的、本质性将数据和操作数据的方法结合在一起的特征,形成抽象概念,用以描述事,形成一个独立的实体,并隐藏内部物的共性细节,对外提供统一的接口继承多态允许一个类从另一个类继承属性和方指同一个操作在不同对象上表现出不法,实现代码复用,促进代码的扩展同的行为,提高了程序的灵活性和可和维护扩展性类和对象类对象类是对象的蓝图,定义了对象的属性和行为对象是类的实例,拥有类的属性和行为,是面向对象编程中的基本单元类的定义与组成概念类是面向对象程序设计中的核心概念,它是一个抽象的数据类型,描述了一组对象的共同属性和行为属性类的属性是类所拥有的数据成员,用于描述对象的特征方法类的方法是类所拥有的函数成员,用于描述对象的行为和操作对象及其属性和行为属性行为对象的状态,比如颜色、尺寸、对象可以执行的动作,比如移动位置等这些属性可以是基本数、旋转、计算等行为通常用方据类型,比如整数、浮点数、字法来实现,方法可以访问对象的符串等,也可以是自定义的复杂属性,并执行操作数据类型封装与数据抽象隐藏内部细节提高代码可维护性12封装将数据和操作隐藏在对象封装使代码更容易理解、修改内部,只暴露必要的接口和扩展,而不影响其他部分数据抽象3抽象隐藏对象的内部实现细节,提供简洁的外部视图继承与多态继承多态继承是一种创建新类(子类)的方式,它继承了已有类(父类)多态性允许对象以不同的方式响应相同的消息,例如,在不同子的属性和方法类中实现相同的方法,但执行不同的逻辑继承的概念与实现概念继承是一种机制,允许创建新类(子类),它们继承了现有类(父类)的属性和行为子类可以扩展或修改父类的功能,从而实现代码复用和层次化结构12实现使用关键字来声明继承关系,子类可以访问父类的公开成员,并可以添加自己的成员通extends过继承,子类可以复用父类的代码,提高开发效率多态性的概念与实现不同对象,不同行为1同一个方法不同对象调用产生不同的结果,,代码复用,简化设计2通过接口或基类实现代码的灵活性和可扩展性,提高可维护性3代码结构清晰易于理解和修改,类之间的关系关联关系聚合关系组合关系依赖关系表示类之间的一种弱关系,例表示类之间的一种整体部分也是一种整体部分关系,表示类之间的一种使用关系,“-“-”如一个学生可以借阅多本书籍关系,但部分可以独立存在但部分不能独立存在,例如人一个类需要使用另一个类的方”,而一本书籍也可以被多个学,例如汽车和轮胎,轮胎可以与心脏,心脏不能脱离人而存法或属性,例如一个程序需要生借阅存在于汽车之外在使用数据库连接类来连接数据库关联关系表示类之间的简单联系体现的是“知道”关系一个类对象可以调用另一个类对类知道类,但是类不知道类A BB A象的方法使用虚线箭头表示箭头指向被关联的类聚合关系弱关联可分离聚合关系表示一种拥有关系,但拥有者和被拥有者之间是弱聚合关系中的被拥有者可以脱离拥有者独立存在,例如图书馆“”“”“”“”“”关联的,拥有者不负责被拥有者的生命周期例如,大学与学生与书籍组合关系整体与部分强依赖组合关系表示整体与部分之间的整体拥有部分,整体负责创建和关系部分的生命周期依赖于整销毁部分部分的生命周期由整体,部分不能独立存在体控制举例例如,汽车和发动机之间的关系发动机是汽车的一部分,它不能独立存在,汽车负责创建和销毁发动机依赖关系使用关系临时性代码耦合一个类使用另一个类的成员方法或属性,但依赖关系是比较弱的关系,体现为方法参数依赖关系会导致代码耦合,需谨慎设计,避不持有另一个类的实例、局部变量等形式免过度依赖设计模式设计模式是软件开发中反复出现的问题的解决方案它们提供可重用的代码结构和最佳实践,有助于创建灵活、可维护和可扩展的代码设计模式的概念与分类定义分类设计模式是软件设计中反复出现的问题的解决方案它们提供经设计模式通常分为三大类创建型模式、结构型模式和行为型模过验证的最佳实践,用于构建灵活、可维护和可扩展的软件式常见设计模式解析工厂模式单例模式装饰器模式创建对象的最佳实践,隐藏创建逻辑,提高确保一个类只有一个实例,并提供一个全局动态地添加额外的功能到对象,保持原有对代码灵活性访问点象不变创建型模式抽象工厂模式建造者模式提供一个创建一系列相关或依赖将一个复杂对象的构建与其表示对象的接口,而无需指定具体类分离,使得同一个构建过程可以创建不同的表示工厂方法模式原型模式定义一个用于创建对象的接口,使用原型实例指定创建对象的种让子类决定实例化哪个类工厂类,并且通过复制这些原型创建方法使一个类的实例化延迟到子新的对象类结构型模式将一个类的接口转换成客户希望的另将抽象部分与它的实现部分分离,使一个接口模式使得原本由它们可以独立变化模式可以Adapter Bridge于接口不兼容而不能一起工作的类可将抽象部分和实现部分分别独立变化以一起工作将对象组合成树形结构以表示部分“-整体的层次结构模式可”Composite以让你对单个对象和组合对象进行一致的处理行为型模式责任链模式命令模式12将请求沿着处理者链传递,直将请求封装成对象,以便使用到某个处理者能够处理它不同的请求、队列或日志记录来参数化客户解释器模式迭代器模式34定义语言的语法,并提供解释提供一种方法顺序访问聚合对器来解析该语言的句子象中的元素,而不暴露该对象的内部表示面向对象分析和设计面向对象分析和设计是软件开发中的一种方法,它将系统分解成相互关OOAD联的对象,并以对象为中心进行分析、设计和实现分析设计首先通过分析用户的需求和业设计阶段将分析结果转化为具体的代OOAD务逻辑,将系统分解成不同的对象,码实现,并考虑系统的架构、模块划并定义每个对象的属性和行为分和数据结构等方面对象建模技术抽象封装12从现实世界中识别出关键的对将对象的属性和行为隐藏在对象,并提取其属性和行为象内部,仅暴露必要的接口继承多态34通过继承,创建新的对象类型同一个操作在不同的对象上表,并复用现有对象的属性和行现出不同的行为,实现代码的为灵活性和可扩展性建模语言UML统一建模语言标准化建模工具是一种用于可视化、指定、为面向对象软件开发提供了UML UML构建和文档化软件密集系统的图标准化建模符号和方法,方便团形化语言队成员协作和理解多种图形表示提供了一套图形符号,用于描述软件系统的各个方面,包括类、对象UML、关系、行为等用例建模定义参与者1识别与系统交互的用户或外部实体确定用例2描述系统提供的特定功能或服务建立关系3展现参与者与用例之间的交互关系静态建模类图1展示系统中的类以及它们之间的关系对象图2展示系统中特定时刻的对象以及它们之间的关系组件图3展示系统中的组件以及它们之间的关系静态建模专注于系统的结构和组成,不考虑时间因素它为系统的设计提供基础,包括类、对象、组件以及它们之间的关系动态建模行为1对象之间交互状态2对象状态变化时序3事件序列交互建模顺序图描述对象之间交互的时间顺序,展示消息传递过程协作图展现对象之间交互关系,侧重于对象之间的连接和交互点状态图描述对象在不同状态下的行为变化,展现对象生命周期面向对象设计原则为了实现可复用、可扩展、易维护的软件,面向对象设计遵循一些重要的原则单一职责原则开闭原则12每个类只负责一个功能对扩展开放,对修改关闭里氏替换原则3子类可以替换父类单一职责原则清晰易懂提高可复用性降低风险每个类或模块只专注于一个职责,代码更易单一职责的类或模块更容易被其他部分复用当修改一个类或模块时,不会影响其他功能于理解和维护,提升代码效率,降低代码修改风险开闭原则对扩展开放对修改关闭系统应该易于扩展,添加新功能或修改现有功能无需修改原有代系统在扩展时,不应修改原有代码,而是通过添加新代码来实现码扩展里氏替换原则子类可替换父类继承和多态子类对象可以替换父类对象,不影响该原则与继承和多态息息相关,是面程序的正常运行向对象设计中重要的原则之一代码可维护性确保代码可维护性和可扩展性,有利于降低代码的复杂度依赖倒置原则高层模块抽象不应该依赖于低层模块两者都应该依赖于抽象抽象不应该依赖于细节接口隔离原则定义目的应用客户端不应该依赖它不需要的接口接口避免臃肿的接口,降低客户端的依赖性,将一个大的接口拆分为多个小的接口,每应该尽可能小,这能提高灵活性,降低耦提高代码的可维护性和可复用性个接口只包含客户所需的方法合度。
个人认证
优秀文档
获得点赞 0