您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 工作计划 > uml复习(不要问我是谁,请叫我雷锋)
各种性能指标及如何到达各种性能指标的方法①性能:吞吐量、响应时间、Deadlines②实现吞吐量:Peak&Average③实现响应时间:Guaranteed&Average④Dealines:batchjobs常用的中间件有那几种类型(1)常见的对象请求代理架构(2)面向消息的中间件(3)Java2EnterpriseEdition(Java2的企业版)(4)消息代理(5)业务过程代理有那些常见架构风格/各种架构风格的组件和连接器是什么1.管道和过滤器架构风格:适用于需要定义一系列的执行规则数据的独立运算,组件在输入时读数据流,在输出时产生数据流组件:称为过滤器,应用于对局部的输入流的转换,经常增长的计算,因此,在输入结束前输出就开始了连接器:称为管道,给流提供管道,把一个过滤器的输出传输到另一个输入。2.面向对象风格:适用于主要问题识别和保护信息的相关主体。数据代理和他们相关的操作封装在一个抽象数据类型里面组件:对象连接器:功能和过程调用3.客户-服务器风格:适用于涉及到分布式的数据和跨越一系列的组件的处理组件:服务器、客户端连接器:网络,允许客户端访问远程服务器。4.分层风格:适用于设计到分布式的能够分层的组织的类的服务,每层给它的上一层提供服务,同时作为下一层的客户端。只有仔细的从内层选择选择过程,才能用于他们接近的外层。组件:典型的过程的集合连接器:典型的在有限的可见性下的过程调用5仓库风格:适用于主要问题的建立、增加和维护复杂信息的主体部分,信息一定要能够用很多方式操作。经常需要长期的存在。组件:主要的数据结构能够表示出系统的正确状态,操作主要数据结构的独立组件的集合连接器:典型的过程调用或是直接内存访问6.解释程序风格:适用于执行解决方案的最合适的语言或是机器不是直接可用的。组件:包括一个状态机,有一个执行引擎和三个记忆状态:当前执行引擎的状态、程序被翻译、当前被翻译程序的状态连接器:过程调用、直接内存访问7.过程控制风格:适用于目的是维护特殊过程的输出属性在给定参考值的情形下组件:过程定义、控制算法连接器:数据流关系、过程变量、设置断点、传感器8.隐式调用风格:应用于涉及到组件的松耦合集,其中的每个都执行一些操作,还可能允许其他的操作。组件:一个或多个事件连接器:广播系统架构师需要的核心技能是什么涉众之间的交流,技术知识,软件工程学,风险管理什么是软件架构它是关于软件设计:所有的架构是软件设计,但不是所有的设计都是软件架构。设计过程的一个部分;简单地说,架构关注“一旦系统建立后就很难或是不可能改变的问题”:质量属性,例如安全性,性能、非功能性需求,像开销,硬件配置。更多的是在这个部分之后的【百度答案】软件架构(softwarearchitecture)是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口_(计算机科学)来实现什么是架构风格描述软件的基本结构组织或纲要,提供事先定义好的子系统,制定好责任并将它们组织在一起的法则和指南。|答案2:也叫架构模式,一个架构风格描述软件系统里的基本的结构组织或纲要。架构风格提供一些事先定义好的子系统,指定他们的责任并给出把他们组织在一起的法则和指南。一个架构模式常常可以分解成很多个设计模式的联合使用。MVC模式就属于架构模式。什么是架构视图一个架构视图是对于从某一视角或某一点上看到的系统所做的简化描述,描述中涵盖了系统的某一特定方面,而省略了此方面无关的实体。GRASP模式的具体内容①创造者分配给类B职责来创造类A的一个实例如果:(1)B聚合A的对象(2)B包含A的对象(3)B记录A的对象的实例(4)B紧密地使用A的对象(5)B被创建时有初始化的数据传递给②专家在设计对象(类)时,如果某个类能够在某方面具有完整信息,足以实现某责任,就将这个责任分配给这个类,③控制器控制器是在用户接口层上的第一个对象,负责接收和处理系统的操作信息。④低耦合测量存在于模块之间的依赖程度⑤高内聚测量一个共享的模块内元素的相关性;一个单独模块执行任务的程度是功能相关的⑥多态当相关的供选方案或行为随着类型的变化而变化时,给行为分配职责—使用多态操作—来适合行为变化的类型。⑦纯虚构分配一系列高度聚合的职责给虚假的类或是不表现某事完成的领域问题概念的有用的类,它支持高内聚、低耦合、可重用。⑧间接问题:如何分配职责避免直接耦合?如何减弱对象的耦合?解决方案:分配职责给中间的调解对象来调解两个组件之间的关系。⑨防止编译问题:如何设计对象,子系统和系统,使其内部的变化和不稳定不会对其他元素产生不良影响?解决方案:识别设计变化或不稳定之处,分配职责用以在这些变化之外创建稳定接口。GRASP的主要特征:对象职责分配的基本原则,主要应用在分析和建模上。GRASP的核心思想的理解:自己干自己的事(职责的分配)自己干自己的能干的事(职责的分配)自己只干自己的事(职责的内聚)OO设计的五个基本原则及课件中讲述的其它软件原理1.单一职责原则:这个原则和关注点分离紧密联系。它陈述了每个对象应该只有一个理由去改变,单一聚焦在职责上。通过依附这个原则,你避免了庞大的类的设计问题,那就像瑞士的军刀。有了精确的对象,你再次增加了系统的可读性和可维护性。2.开闭原则:这个原则陈述了类应该对扩展开放,对修改关闭,那样你就能够添加新的特征,扩展一个类而不用改变它内部的行为。这个原则旨在避免破坏存在的类及依赖它的其他类,这使得你的整个应用程序中产生故障和错误的涟漪。3.Liskov替换原则:Liskov替换原则要求你应该能够使用任何衍生出的类代替父类,不用修改就有同样的行为。这个原则与开闭原则一致,它保证了一个衍生出的类不影响父类的行为,或者说,衍生出的类必须能够被它们的基类替代。4.接口分离原则:这个原则是将一个抽象方法分裂成几组职责,给这些组分配接口来防止客户端实现一个很大的接口,这个接口容纳了很多它们不使用的方法。目的是为了让类使用相同的接口只需要实现一些具体的方法,而不是有很多方法的庞大的接口。5.依赖反转原则:把你的类从具体的实现中隔离开,使它们依赖于抽象类或接口。它促进了对接口而不是实现的译码,这通过保证对实现的低耦合来增加系统的灵活性。企业应用架构在各层有那些主要的模式三层架构的系统:表现层实现用户界面,在领域层实现领域逻辑,在数据源层存取数据1表现层:提供服务、显示信息(如在WINDOWS或HTML页面中,处理用户请求,HTTP请求,命令行调用,批处理API);2领域层:领域逻辑,系统中真正的核心。也称为业务逻辑,它就是应用程序必须做的所有领域相关工作:包括根据输入数据或者已有数据进行计算,对从表现层输入的数据进行验证,以及根据从表现层接收的命令来确定应该调试哪些数据源逻辑;3数据源层:与数据库、系统消息系统、事务管理器及其他软件包通信。最主要的数据源逻辑就是数据库,主要责任是存储持久数据。Larman的敏捷UP设计方法的具体步骤①初始:大体上的构想、业务案例、范围和模糊评估。②细化:已精化的构想、核心架构的迭代实现、高风险的解决、确定大多数需求和范围以及进行更为实际的评估。③构造:对遗留下来的风险较低和比较简单地元素进行迭代实现,准备部署。移交:进行beta测试和部署。4+1视图“4+1”视图模型即从5个不同的视角(逻辑视图,进程视图,物理视图,开发视图和场景视图)来描述软件体系结构。每个视图之关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的全部内容。应用的集成策略掌握:命令模式,状态模式,装饰模式,观察者模式,策略模式,单例模式,工厂方法模式,抽象工厂模式,组合模式适配器模式,外观模式,责任链模式的UML图和java代码①命令模式(别名:动作,事务)将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。②状态模式(别名:状态对象)允许一个对象在其内部状态改变时改变它的行为。③观察者模式(别名:依赖,发布-订阅)定义对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖于它的对象都得到通知并被自动更新。④策略模式(别名:政策)定义一系列算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。⑤单件模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。⑥工厂方法模式(别名:虚拟构造)定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。⑦抽象工厂模式(别名:配套)提供一个创建一系列(相互依赖)对象的接口,而无需指定它们具体的类。⑧组合模式将对象组合成数形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。⑨适配器模式(别名:包装器)将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作⑨外观模式为系统中的一组接口提供一个一致的界面,Façade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。凡是课件里有关架构的具体例子(一般都有UML图或有代码)都需要仔细体会,比如显示学生成绩和全名的程序的不同架构方法,计算应收账款(RevenueRecognition)的不同设计方法,农场计算动物脚数的设计方法等等(不一一列出了)。
本文标题:uml复习(不要问我是谁,请叫我雷锋)
链接地址:https://www.777doc.com/doc-4237334 .html