欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    架构整理资料.doc

    • 资源ID:976240       资源大小:129.50KB        全文页数:8页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    架构整理资料.doc

    1、1. 8架构、模式、框架的区别架构、框架、模式是一种从大到小的关系,也是一种组合关系。从复用角度讲,设计模式是代码级复用、框架是模块级复用、架构是系统级复用、平台是应用级复用。架构一般针对一个行业或一类应用,是技术和应用完美的结合。框架比架构更具体,框架不是现成可用的应用系统。是一个半成品,需要后来的开发人员进行二次开发,实现具体功能的应用系统。框架是为了解决特定问题而存在的,其它诸如ORM框架、模板框架、缓存框架,框架不能直接使用,需要二次开发。设计模式就是告诉你针对特定问题如何组织类、对象和接口之间的关系,是前人总结的经验。设计模式和框架在软件设计中是两个不同的研究领域。设计模式研究的是一

    2、个设计问题的解决方法,一个模式可应用于不同的框架和被不同的语言所实现;而框架则是一个应用的体系结构,是一种或多种设计模式和代码的混合体虽然它们有所不同,但却共同致力于使人们的设计可以被重用,在思想上存在着统一性的特点,因而设计模式的思想可以在框架设计中进行应用。模式:是在给定的上下文中针对一个常见问题的一个常规解决方法。平台的概念类似框架,但又结合的架构的考虑,它是更高层面上的“框架”,准确说是一种应用。它是针对企业用户,为解决企业业务需要而形成的产品。2. 面向对象设计原则类的设计原则:开闭原则、依赖倒置原则、Liskov替换原则、单一职责原则、接口分离原则、组合复用原则、所知最少原则包内聚

    3、原则:发布与复用等价原则、共同封闭原则、共同复用原则包耦合原则:无循环的依赖原则、稳定的依赖原则、稳定的抽象原则3. 23种GOF模式的分类(创建型、结构型、行为型;要了解常用模式属于哪种类型,如:适配器模式属于结构型;理解工厂模式、观察者模式、适配器模式、)创建型模式(描述怎样创建一个对象,而隐藏对象的具体细节,使得代码不依赖具体的对象) -创建型类模式将对象的部分创建工作延迟到子类-创建型对象模式将它延迟到另一个对象中结构模式(处理类或对象的组合,即描述类或对象之间怎样组织起来形成更大的结构,从而实现更大的功能)-结构型类模式使用继承机制来组合类-结构型对象模式描述了对象间的组装方式行为型

    4、模式(描述算法及对象之间的任务(职责)分配)-行为型类模式使用继承描述算法与控制法-行为型对象模式则描述一组对象怎样协作完成单个对象无法完成的工作创建型模式通过抽象实例化的过程,使得系统与具体对象的创建、组合和表示独立;把系统使用了哪些具体的类的信息封装在一起,而隐藏了这些类的实例是如何被创建和组织在一起;整个系统关于这些对象所知道的仅仅是由抽象类所定义的接口。系统类的创建模式使用继承改变被实例化的类,对象创建模式将实例化委托给另一个对象创建型模式有:1、抽象工厂2、工厂方法结构型模式有:1、适配器模式2、外观模式行为型模式有:1、迭代器模式2、访问者模式抽象工厂:意图:提供一个创建一系列相关

    5、或相互依赖对象的接口,而无须指定它们具体的类。案例:要求支持多平台的文字处理工具(窗口风格的平台无关性)思路:定义一个抽象类,用以声明用于创建每一种窗口构件(如按钮、滚动条)的接口,而具体子类则实现特定风格。这样,用户在使用时只需提出要求(参数)而无需知道哪个类具体完成 适用性:一个系统要独立于它的产品的创建、组合和表示时;一个系统要由多个产品系列中的一个来装配时(多选一);软件生产采用产品线的部件系列进行组装,得到具体产品时工厂方法:意图:定义一个用于创建对象的接口,让子类决定实例化哪个类,使一个类的实例化延迟至子类。案例:在一个图形文档应用中,类APPICATION负责图形文档的管理(创建

    6、、存储等),类DOCUMENT负责具体图形文档的编辑。(在实例化D之前A并不知D编辑生成的是什么类型的文件)工厂方法角色与结构抽象工厂接口(Creator):是工厂方法模式的核心,与应用程序无关。任何在模式中创建的对象的工厂类必须实现这个接口具体工厂类(ConcreteCreator):是实现抽象工厂接口的具体工厂类,与应用程序密切相关,在应用程序的调用下,这些类用于创建产品实例。抽象产品(Product):是工厂方法模式所创建的对象的父类,或它们共同拥有的接口。具体产品(ConcreteProduct):实现了抽象产品所定义的接口,是工厂方法模式所创建的对象所属的类优点:工厂方法模式可以使系

    7、统在不修改具体工厂角色的情况下引进新的产品适配器模式:意图:可以使某个类的接口转换成用户所希望的另一个类的接口适用场合:1)要想使用一个已经存在的类,而它的接口不符合需求2)创建一个可复用的类,该类可与其它不相关的类或接口可能不一定兼容的类协同工作,类适配器使用多重继承对一个接口对另一个接口进行匹配;对象适配器依赖于对象组合观察者模式(ObserverPattern):定义:对象间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式包含如下角色: Subject:目标 ConcreteSubject:具体目标 Observer:观察者 Conc

    8、reteObserver:具体观察者观察者模式描述了如何建立对象与对象之间的依赖关系,如何构造满足这种需求的系统?这一模式中的关键对象是观察目标和观察者,一个目标可以有任意数目的与之相依赖的观察者,一旦目标的状态发生改变,所有的观察者都将得到通知。作为对这个通知的响应,每个观察者都将即时更新自己的状态,以与目标状态同步,这种交互也称为发布-订阅(publish-subscribe)。目标是通知的发布者,它发出通知时并不需要知道谁是它的观察者,可以有任意数目的观察者订阅它并接收通知。观察者模式的优点:(1)观察者模式可以实现表示层和数据逻辑层的分离,并定义了稳定的消息更新传递机制,抽象了更新接口

    9、,使得可以有各种各样不同的表示层作为具体观察者角色。(2)观察者模式在观察目标和观察者之间建立一个抽象的耦合。(3)观察者模式支持广播通信。(4)观察者模式符合“开闭原则”的要求观察者模式的缺点:(1)如果一个观察目标对象有很多直接和间接的观察者的话,将所有的观察者都通知到会花费很多时间。(2)如果在观察者和观察目标之间有循环依赖的话,观察目标会触发它们之间进行循环调用,可能导致系统崩溃。(3)观察者模式没有相应的机制让观察者知道所观察的目标对象是怎么发生变化的,而仅仅只是知道观察目标发生了变化。在以下情况下可以使用观察者模式:(1)一个抽象模型有两个方面,其中一个方面依赖于另一个方面。将这些

    10、方面封装在独立的对象中使它们可以各自独立地改变和复用。 (2)一个对象的改变将导致其他一个或多个对象也发生改变,而知道具体有多少对象将发生改变,可以降低对象之间的耦合度。(3)一个对象必须通知其他对象,而并不知道这些对象是谁。(4)需要在系统中创建一个触发链,A对象的行为将影响B对象,B对象的行为将影响C对象,可以使用观察者模式创建一种链式触发机制。模式扩展:MVC模式MVC模式是一种架构模式,它包含三个角色:模型(Model),视图(View)和控制器(Controller)。观察者模式可以用来实现MVC模式,观察者模式中的观察目标就是MVC模式中的模型(Model),而观察者就是MVC中的

    11、视图(View),控制器(Controller)充当两者之间的中介者(Mediator)。当模型层的数据发生改变时,视图层将自动改变其显示内容。 4. 软件逻辑架构、物理架构、系统架构的概念及理解逻辑架构: 逻辑架构关注功能,不仅包括用户可见的功能,还包括为实现用户功能而必须提供的“辅助功能模块”(软件系统中元件之间的关系)物理架构: 物理架构关注“目标程序及其依赖的运行库和系统软件”最终如何安装或部署到物理机器,以及如何部署机器和网络来配合软件系统的可靠性,可伸缩性等要求。(软件元件是怎样放到硬件上的)系统架构: 是一个软件系统从整体到部分的最高层次的划分。 5. UML的“4+1”视图及其

    12、理解(结构视图、行为视图、实现视图、环境视图;+用户“4+1”视图模型用五个视图组成的模型来描述软件架构。该模型包含五个主要的视图:逻辑视图(LogicalView),描述了设计的对象模型,支持系统的功能需求。()类图进程视图(ProcessView),描述了设计的并发和同步特征,支持系统的运行特性。()无完全对应物理视图(PhysicalView),描述了软件到硬件的映射,反映了分布式特性,支持系统的拓扑、安装和通信需求。开发视图(DevelopmentView),描述了在开发环境中软件的静态组织结构,支持软件开发的内部需求。()类图,组件图场景(Scenario),用来说明重要的系统活动,

    13、是其它四个视图在用例(UseCase)驱动下的综合 ()用例图 UML的结构视图(View)用户视图:以用户的观点表示系统的目标,它是所有视图的核心,该视图描述系统的需求。结构视图:表示系统的静态行为,描述系统的静态元素,如包、类与对象,以及它们之间的关系。行为视图:表示系统的动态行为,描述系统的组成元素如对象在系统运行时的交互关系。实现视图:表示系统中逻辑元素的分布,描述系统中物理文件以及它们之间的关系。环境视图:表示系统中物理元素的分布,描述系统中硬件设备以及它们之间的关系、。6. C/S结构与B/S结构区别b/s结构和c/s的区别 B/S结构,即Browser/Server(浏览器/服务

    14、器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。6.C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。主要区别: 维护性:系统维护是软件生存周期中开销最大的,b/s容易维护,只需要升级服务端。 c/s升级比较困难,需要所有客户端都要升级。C/S 程序由于整体性, 必须对出现的问题以及系统升级整体考察。如果升级难. 可能是,再做一个全新的系统 ,B/S 由构件组成,方便构件个别的更换,实现系统的无缝升级. 系统维护

    15、开销减到最小.用户从网上自己下载安装就可以实现升级.重用性:C/S 程序不可避免整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好. B/S的多重结构,要求构件相对独立的功能. 能够相对较好的重用.系统维护不同,系统维护是软件生存周期中开销最大的,C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统 ,B/S 构件组成,方便构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.7. 经典B/S三层架构三层架构:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为

    16、了“高内聚,低耦合”的思想。、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,三层是指逻辑上的三层,即使这三

    17、个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或成为领域层)、表示层。三层结构原理:3个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体

    18、系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。表示层位于最外层(最上层),离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。业务逻辑层业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应

    19、对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。例如Martin Fowler在Patterns of Enterprise Application Architecture一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。作为领域驱动设计的先驱Eric Evans,对业务逻辑层作了更细致地划分,细分为应用层与领域层,通过分层进一步将领域逻辑与领域逻辑的解决方案分离。8. 软件元素软件体系结构是具有一定形式的结构化元素,即构件的集合,包括处理构件,数据构件和连接构件。 9. 面向对象的特点信息隐藏和封装特性: 封装是把过程和数据包围起来,对数据的访问只能通过已

    20、定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 组合特性 组合用于表示类的“整体/部分”关系。例如。, 主机、显示器、键盘、鼠标组合成一台计算机。 动态特性 (1)抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 (2)多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。10. 要求能根据用例描述画出UML的类图、序列图略word文档 可自由复制编辑


    注意事项

    本文(架构整理资料.doc)为本站会员(风****)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922