软件设计师-基础知识科目-面向对象技术知识7
七、面向对象技术知识:
面向对象基础知识:
对象:
对象的组成部分包括:对象名,状态(属性),行为(操作)。
类:
类的分类:实体类、接口类(边界类)和控制类。
实体类的对象,表示现实世界中真实的实体,如人、物等。 接口类(边界类)的对象,为用户提供一种与系统合作交互的方式,分为人和系统两大类。
人的接口可以是显示屏、窗口、Web窗体、对话框、菜单、列表框、其他显示控制、条形码、二维码或者用户与系统交互的其他方法。 系统接口涉及到把数据发送到其他系统,或者从其他系统接收数据。 控制类的对象,用来控制活动流,充当协调者。
多态:
参数多态(通用的):用泛型编程是发散式的,是静态绑定的,让相同的实现代码应用于不同场合,看重的是算法的普适性。 包含多态(通用的):利用OOP,是收敛的,是动态绑定的,让不同的实现代码应用在相同的场合,注重接口与实现的分离度。 强制多态(特定的):一种类型的变量在作为参数传递时隐式转换成另一种类型,比如,一个整型变量可以匹配浮点型变量的函数参数。 过载多态(特定的):同一个名(操作符,函数名),在不同的上下文中有不同的类型。 ---- ---- 多态通过绑定实现,静态绑定或动态绑定。 面向对象技术中,多态由继承机制来支持。
小点:
面向对象设计时,包含的主要活动:认定对象、组织对象、描述对象间的相互作用、确定对象的操作。背 常见的命名对象有:变量、函数、数据类型。
UML:
顺序图:
实体类:负责数据和业务逻辑。 边界类:负责和用户进行交互,即用户界面。 控制类:负责实体类与界面类的交互。
类图:
聚合与组合关系举例:
购物车与商品是整体与部分的关系,购物车包含了商品,但是商品可以脱离购物车独立存在,这是一种聚合关系。 网店与商品之间是一种整体与部分的关系,商品是网店的一部分,如果网店不存在了,那么网店中的商品也不存在,它们之间是组合关系。
类图建模场景:
UML的系统视图:Pass
逻辑视图(设计视图):它表示了设计模型中在架构方面具有重要意义的部分,即类、子系统、包和用例实现的子集。 进程视图:进程视图是可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例,描述了并发与同步结构。 实现视图:实现视图对组成基于系统的物理代码的文件和构件进行建模。
部署视图:部署视图把构件部署到一组物理节点上,表示软件到硬件的映射和分布结构。 用例视图:用例视图是最基本的需求分析模型。
UML图总结:
静态建模:类图、对象图、用例图。 动态建模:序列图(顺序图,时序图)、通信图(协作图)、状态图、活动图。 物理建模:构件图(组件图)、部署图。
UML小点:
展示交付系统的软件组件和硬件之间的关系的图是 部署图。 UML适用于迭代式的开发过程。
设计模式:
构造型(创建型)模式:
考过:
构建器模式:将复杂类的表示与其构造相分离。 原型模式:指定创建对象的类型,并且通过拷贝这个原型创建的对象。
结构型模式:
考过:
适配器模式:接口转换 桥接模式:将类的抽象部门和它实现部分分离开了,使他们可以独立地变化。继承树拆分。 组合模式:树形目录结构、表示"整体-部分"。 装饰模式:附加职责。 享元模式(Flyweight):支持大量细粒度对象共享。例如:目录浏览器设计,将具有相同名称对象,看出不同对象。 外观模式:对外统一接口。 代理模式:提供一种代理以控制这个对象的访问。
行为型模式:
概念:涉及算法和对象间职责的分配。 考过:背
命令模式:日志记录、可撤销。将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化 .... 。 责任链模式:传递职责。 具体举例:日记级别处理。 策略模式:定义一系列的算法,把它们一个个封装起来,并且可以相互替换。 中介模式:不直接引用,通过中介对象来交互。
场景:一组对象以定义良好,但是复杂的方式进行通信,产生的相互依赖关系结构混乱,且难以理解。 访问者模式:作用于某对象结构中的各元素的操作,在不改变各元素的类的前提下,定义作用于这些元素的新操作。一个Visitor对象是一个多态的accept 操作的参数。 观察者模式:一个状态发生变化,所有依赖它的对象都得到通知,并自动更新。
类模式与对象模式分类:
类模式:使用继承机制在类间分配行为。 对象模式:使用对象复合,而不是继承。 Tips:每一大类分成两小类,可以背每一大类的类模式,不在类模式中的就是对象模式。
小点:
在面向对象方法中,动态绑定支持多态。 简单工厂模式属于创建型模式,但不属于23种设计模式之一。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1588369.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!