您好,欢迎访问三七文档
第1章应用集成概述1.应用集成的概念:应用集成是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。2.应用集成模型:表示集成模型、数据集成模型。(见书本P4-6的三个图,画图描述)3.通信模式:1同步通信:请求/应答、同步轮询2异步通信:消息传送通信、发布/订购通信、广播通信4.中间件是一种软件,它通过使用预定的接口或消息来实现各软件部件之间的请求通信。另外,它还通过运行时环境来管理软件组件间的请求。类型:①远程过程调用(RPC);②数据库访问中间件;③面向消息中间件(MOM);④分布式对象技术(DOT);⑤事务处理监控器(TPM);第2章XML技术1.XML的定义:XML是eXtensibleMarkupLanguage的缩写,意为可扩展标记语言。它是SGML的一个子集,是一种元标记语言,可以定义新的标记语言,而且是自解释语言。2.DTD元素声明:1基本元素的声明:声明元素元素名数据类型如:!ELEMENT姓名(#PCDATA)2复合元素的声明:声明元素元素名包含的基本元素名如:!ELEMENT联系人(姓名,ID,公司,EMAIL,电话)3根元素的声明(特殊的复合元素):声明元素元素名前面定义的复合元素如:!ELEMENT联系人列表(联系人)*3.DTD元素出现次数控制4.Schema具体内容见PPT5.XPath路径判断、轴见PPT6.XSLT转换过程7.XML的解析第3章数据集成1.XML在数据集成中作用:P52能够实现异构数据源中数据的互操作性;可以实现对资源的快速包装和集成发布;XML技术与全局数据模式相结合可以使异构数据源集成中间件系统能更好地适应于开发、发展环境(如企业的动态联盟环境)中的数据集成。2.基于XML的原数据映射方案:见P67图3.ETL的概念:P67ETL是用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。(包括数据抽取、数据转换、数据加载个三过程)4.字符编码:P59-61UTF—8计算机要处理各种字符,就需要将字符和二进制内码对应起来,这种对应关系就是字符编码(Encoding)。每种编码都限定了一个明确的字符集合,叫做被编码过的字符集,通常所说的字符集大多是这个含义。常见的字符集包括ASCⅡ字符集、EBCDIC字符集、GB2312字符集、BIG5字符集、GBK字符集、GB18030字符集、Unicode字符集等。Unicode的实现方式不同于编码方式,Unicode的实现方式称为Unicode转换格式(UnicodeTranslationFormat,UTF),其编码方案包括UTF-32、UTF-16和UTF-8三种,目前大多使用UTF-8。UTF-8是Unicode的一种变长字符编码,用1~6个字节编码Unicode字符。如果Unicode字符由两个字节表示,则编码成UTF-8很可能需要三个字节,而如果Unicode字符有4个字节表示,则编码成UTF-8可能需要6个字节。5.实验三第4章程序设计语言与集成技术1.程序设计语言分类:P851第一代语言(机器语言):2第二代语言(汇编语言):3第三代语言(高级语言):4第四代语言(4GL,非过程化语言)5第五代语言(5GL,自然语言)2.编译型语言与解释型语言比较编译型语言:程序执行时的基本表示是在实际计算机上的机器语言;编译型语言编写的程序通过一个专门的编译程序把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果。编译型语言在应用源程序执行之前,就将源程序代码“翻译”成目标代码(机器语言),因此目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。形成可执行的目标文件后可多次使用。语法规则更严谨,编程时间长;对于应用程序的密集部分效果较好(着重资源的利用)解释型语言:程序执行时的基本表示是在虚拟计算机上的机器语言;解释型语言编写的程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次,有专门的解释器(产生中间代码)能够直接执行解释型语言;优点是当语句出现语法错误时,可以立即引起程序员注意,而程序员在程序开发期间就能进行校正;更方便灵活,但效率较低,一般通过运行时动态优化代码来获得性能的提升。方便维护和修改;适用接口(调用应用程序)和不太密集的地方3.Java虚拟机(JVM):P901Java也需要编译,但是没有直接编译成为机器语言,而是编译成字节码,然后在Java虚拟机(JVM)上用解释方式执行字节码。与平台无关性2JVM组成:一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域3JVM的设计目标是提供一个基于抽象规格描述的计算机模型,为开发人员提供很好的灵活性,同时也确保Java代码可在符合该规范的任何系统上运行。4JVM的两种机制:装载具有合适名称的类(或是接口),叫做类装载子系统;负责执行包含在乙装载的类或是接口中的指令,叫做运行引擎。5JVM又包括方法区、堆、Java栈、程序计数器和本地方法栈这5个部分4.程序设计语言之间的调用1Java与C++之间的调用2其他语言通过DLL(动态链接库)实现调用:如Delphi调用C++开发的DLL中的函数:定义C++接口、实现C++类、编译、定义Delphi接口、调用接口。5.脚本语言的特点:1同时支持批处理和交互式使用;②简洁的表达方式;③缺少声明,简单的作用域规则;④灵活的动态类型化;⑤易于访问其他程序;⑥复杂的模式匹配和串操作功能;⑦高级数据类型。6.Python是一种开源的面向对象的脚本语言特点:①面向对象②动态类型③自省④内置函数⑤内置类型⑥自动管理内存⑦大型程序支持优点:自由软件精神、软件质量、开发效率、可移植性、库的支持、组建集成、快速原型第5章应用集成中的软件复用技术1.软件复用的概念:是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护费用的技术。2.软件复用与应用集成的关系:1一方面,应用集成中往往会设计大量的遗留软件系统,有时由于领域的特殊性,必须将遗留系统(或其中的构件)用于新的目标系统中,因此需要基于软件复用技术来实现高效、可靠的集成;2另一方面,新开发的软件系统也需要考虑如何适应未来技术的发展及可能的集成需求,采用更易于理解的、适应变化的、可复用的系统软件构架来实现。3.软件复用的三个基本问题:1必须有可以复用的对象;2所复用的对象必须是有用的;3复用者需要知道如何去使用被复用的对象;4.软件复用的一个关键因素是抽象5.面向对象技术的崛起给软件复用技术以新的希望,出现了类库、构件等新的复用方式,微软的ActiveX是其典型的代表。6.软件复用的分类:(119)依据软件复用对象:产品复用和过程复用依据对可复用信息进行复用的方式:黑盒复用和白盒复用7.软件复用的级别:1)代码的复用2)设计的复用3)分析的复用4)测试信息的复用8.结构化程序设计的基本思想是采用“自顶向下、逐步求精”的程序设计方法和“单入口单出口”的控制结构。9.面向对象程序设计的特点:封装性,继承性,多态性,重载性。10.设计模式的概念:是一套面向对象的代码设计经验总结,是在编程领域被反复使用、被多数人知晓、而且经过分类整理的代码设计方法。11.一个模式有四个基本要素:模式名称,模式问题,解决方案,效果。12.面向对象设计模式中类与类主要有6种关系:依赖,关联,聚合,组合,继承,实现13.设计模式中的6大设计原则:(1)单一职责原则:不要存在多于一个导致类变更的原因,即一个类只负责一项职责。(2)里氏替换原则:所有引用基类的地方必须能透明地使用其子类的对象。(3)依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。(4)接口隔离原则:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。(5)迪米特法则(最少知道原则):一个对象应该对其他对象保持最少的了解。(不和陌生人说话)只与直接的朋友通信。(6)开闭原则:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭(只添加,不修改)。14.应用集成常用的设计模式:1)简单工厂模式(依赖倒转原则)概念:简单工厂模式主要用来对一系列类型的创建,根据变量的不同,返回不同类型的实例。优点:实现了客户端(Program类)和后台逻辑(Apple、Orange类)的隔离。使客户端无需关心后台的实现,增强了移植性。封装了对象创建过程。Program类不再依赖具体的Apple、Orange类,而是依赖其抽象Fruit类,在Program类中无须再用New关键字来生成具体的Apple、Orange类对象。缺点:简单工厂模式中,如果需要添加Fruit的第三个派生类香蕉Banana,则必须对工厂类的Create方法进行修改(修改main()方法中的switch语句),不符合开闭原则。改进:果园引进新品种工厂方法模式。2)工厂方法模式概念:工厂方法模式可以使用工厂的子类来决定需要实例化的类,对于调用者而言,不需要知道具体的实例化对象,只需依赖抽象的类。工厂方法模式是通过简单工厂模式改进而来的,利用类的多态性替换了简单工厂模式中的选择语句,这样可以用利于工厂的扩展。优点:克服了简单工厂模式中工厂类违背了开放封闭原则的缺点。易于添加新产品。缺点:工厂方法模式较简单工厂模式开发量有所增,在这一点上不如简单工厂模式显得简单。违反开闭原则的问题由工厂类移至客户端(实际上是将工厂类中的判断逻辑挪到了客户端中)。3)抽象工厂模式概念:抽象工厂模式是工厂方法模式的进一步扩展,它的主要功能是实现对多个相关的对象的创建,创建过程同样依赖于抽象类。优点:抽象工厂模式是工厂方法模式的变种。但更有利于产品的一致性,因为一组相关联的产品(类)被设计在一起。缺点:难以支持新种类的产品。抽象工厂接口确定了可以被创建的产品集合,新种类的加入需要扩展抽象工厂接口,这就涉及至了接口本身和所有实现类的改变。3种工厂模式的对比总结:3种工厂模式属于创建型设计模式,主要用于实现对象的创建。简单工厂模式通过一个具体工厂类,利用具体的创建方法选择性的创建单一类实例;工厂方法模式通过一个抽象的工厂类,利用一个抽象方法创建单一类实例;抽象工厂模式则通过一个抽象工厂类,利用多个抽象方法创建一组相关联的类实例。15.DAO模式(DATAACCESSOBJECT)概念:DAO抽象与封装所有对数据源的访问;负责管理对数据源的连接,以及数据的存取。五个重要部分:(1)数据库连接类(2)VO类(3)DAO接口(4)DAO实现类(5)DAO工厂类第6章分布式对象技术1.分布式对象技术(c/s模式)概念:分布式对象技术是伴随网络而发展起来的一种面向对象的技术,是面向对象设计与多层客户机/服务器体系结构的结合。其实质是将应用服务分割成具有完整逻辑含义的独立子模块,各个子模块可放在同一台服务器或分布在多台服务器上运行,模块之间通过远程调用及消息传递进行交互。第7章消息中间件技术消息中间件是一种由消息传递机制或消息队列模式组成的中间件技术,利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。面向对象中间件局限性:1)同步通信模式:客户发出调用后,必须等待服务对象完成对象进程并返回结果后才能继续执行。2)客户和服务对象的生命周期精密耦合。客户进程和服务对象都必须正常运行,服务对象崩溃或者网络故障导致客户的请求不可达,客户会接收异常。面向消息中间件优越性:1)异步通信模式:发消息者可以在发送消息后进行其他的工作,不用等待接收者的回应,而接收者也不必在接到消息后立即对发送者的请求进行处理。2)客户和服务对象周期的松耦合关系。客户进程和服务对象不要求都正常运行,服务对象崩溃或者网络故障导致客户的请求不可达,客户不会接收异常,消息中间件能保证消息不会丢失。第8章WebService技术1.WebService是一种跨编程语言和跨操作系统平台的远程调用技术WebService是一
本文标题:应用集成
链接地址:https://www.777doc.com/doc-8074160 .html