版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章
軟件開發(fā)方法(三)軟件開發(fā)技術(shù)1計算機(jī)教學(xué)實驗中心問題的提出上一頁下一頁停止放映2什么是構(gòu)件、中間件?什么是CORBA、DOM和JEB?什么是軟件復(fù)用?什么是C/S?B/S?C/S和B/S的區(qū)別?……了解目前主要的軟件開發(fā)技術(shù)了解構(gòu)件技術(shù)了解軟件復(fù)用技術(shù)了解CORBA、DCOM和J2EE技術(shù)了解C/S和B/S技術(shù)及開發(fā)基礎(chǔ)上一頁下一頁停止放映3軟件開發(fā)技術(shù)上一頁下一頁停止放映4構(gòu)件技術(shù)軟件復(fù)用技術(shù)C/S技術(shù)B/S技術(shù)構(gòu)件技術(shù)上一頁下一頁停止放映5
軟件產(chǎn)業(yè)和軟件工程技術(shù)正面臨著新的挑戰(zhàn)。而傳統(tǒng)的軟件設(shè)計思想根本無法應(yīng)對。在這一背景下,構(gòu)件技術(shù)應(yīng)運而生。
構(gòu)件技術(shù)是基于OO技術(shù)上的更高級的抽象。它把底層的對象集合打成包,組成功能“插件”?;跇?gòu)件技術(shù)的軟件生產(chǎn)就是把已存在的構(gòu)件
組裝(集成)到當(dāng)前軟件系統(tǒng)的框架結(jié)構(gòu)中,
從而生產(chǎn)出新的軟件產(chǎn)品。
可以預(yù)見,構(gòu)件技術(shù)是軟件產(chǎn)業(yè)化革命的必然發(fā)展趨勢。構(gòu)件技術(shù)概述上一頁下一頁停止放映6
OO技術(shù)是在“數(shù)據(jù)十算法”的基礎(chǔ)上提升了對事物的認(rèn)識方法。而構(gòu)件技術(shù)則在“對象+算法”的基礎(chǔ)上將認(rèn)識事物的角度從對象個體本身提升到個體在群體中的作用。這個認(rèn)識的提高具有本質(zhì)的不同。
從抽象程度來看,OO技術(shù)已達(dá)到了類級重用(代碼重用),它以類為封裝的單位。而構(gòu)件是對一組類的組合進(jìn)行封裝,可以將底層的多個邏輯組合成高層次上的粒度更大的新構(gòu)件,甚至直接封裝到一個系統(tǒng),使模塊的重用從代碼級、對象級、架構(gòu)級到系統(tǒng)級都可能實現(xiàn)。顯然,構(gòu)件技術(shù)將抽象的程度提到了一個更高的層次。這種思想正在改變著軟件的開發(fā)方法和人們的思維方式下一頁上一頁構(gòu)件的屬性停止放映7
構(gòu)件是可獨立配置的單元,因此構(gòu)件必須自包容。
構(gòu)件強(qiáng)調(diào)與環(huán)境和其他構(gòu)件的分離,因此構(gòu)件的實現(xiàn)是嚴(yán)格封裝的,外界沒機(jī)會或沒必要知道構(gòu)件內(nèi)部的實現(xiàn)細(xì)節(jié)。
構(gòu)件可以在適當(dāng)?shù)沫h(huán)境中被復(fù)合使用,因此構(gòu)件需要提供清楚的接口規(guī)范,可以與環(huán)境交互。
可以看出,構(gòu)件沿襲了對象的封裝特性,但同時并不局限于一個對象,其內(nèi)部可以封裝一個或多個類、原型對象甚至過程,結(jié)構(gòu)是靈活的。構(gòu)件的使用上一頁下一頁停止放映8
每個構(gòu)件都需要先注冊才能使用。構(gòu)件是通過它們的接口特征來標(biāo)識的,它們所提供的服務(wù)與訪問方式是接口特征的一部分內(nèi)容。要考慮的因素包括:應(yīng)用編程接口(API)。構(gòu)件所需的開發(fā)和集成。
運行需求,例如資源的使用(內(nèi)存和硬盤),時間或速度以及網(wǎng)絡(luò)協(xié)議。
服務(wù)需求,例如操作系統(tǒng)的接口,或需要其他構(gòu)件的支持等。安全特征,例如訪問控制和身份驗證協(xié)議等。嵌入式設(shè)計假定,有特定的數(shù)值/非數(shù)值算法使用。異常處理。實現(xiàn)構(gòu)件技術(shù)的必備條件上一頁下一頁停止放映9
有標(biāo)準(zhǔn)軟件體系結(jié)構(gòu),保證構(gòu)件間通信協(xié)議統(tǒng)一,實現(xiàn)同步和異步操作控制,突破本地空間限制,
充分利用網(wǎng)絡(luò)環(huán)境。
構(gòu)件有標(biāo)準(zhǔn)接口,保證系統(tǒng)可分解成多個功能獨立的單元,用構(gòu)件組裝而成。構(gòu)件獨立于編程語言。
構(gòu)件提供版本兼容,來實現(xiàn)應(yīng)用系統(tǒng)的擴(kuò)展和更新。構(gòu)件設(shè)計上一頁下一頁停止放映10·
因為構(gòu)件依賴于平臺環(huán)境,所以設(shè)計時有特殊要求:⑴以接口為核心,使用開放標(biāo)準(zhǔn)。統(tǒng)一的開放標(biāo)準(zhǔn)有,CORBA、DCOM、EJB等。⑵構(gòu)件語義的描述要形式化。在不同標(biāo)準(zhǔn)中,它們都有自己的形式化語義規(guī)定。如在EJB中有會話Bean和實體Bean
事務(wù)描述符等。⑶提煉封裝構(gòu)件過程要嚴(yán)格記錄。由于構(gòu)件允許第三方使用所以要保證第三方用戶能正確理解構(gòu)件設(shè)計思想,就必須記錄每次提煉的變化。通常,要用版本來管理。⑷設(shè)計模式也可以重用?;跇?gòu)件的系統(tǒng)開發(fā)的優(yōu)點之一是重用,它的目標(biāo)是代碼、設(shè)計、解決方案都能重用。⑸利用開發(fā)工具。利用開發(fā)工具創(chuàng)建構(gòu)件和應(yīng)用軟件。工具如Jbuilder、EJBMaker等。下一頁上一頁中間件停止放映11
構(gòu)件是依賴于平臺環(huán)境的。那么在分布式異構(gòu)環(huán)境中如何應(yīng)用構(gòu)件呢?
中間件就是基于跨環(huán)境的構(gòu)件應(yīng)用而發(fā)展起來的。中間件是介于應(yīng)用層和網(wǎng)絡(luò)層之間的一個功能層次,是使應(yīng)用系統(tǒng)獨立于由異構(gòu)操作環(huán)境(操作系統(tǒng)、硬件平臺及通信協(xié)議等)組成的開發(fā)環(huán)境。
中間件擴(kuò)展了客戶/服務(wù)器結(jié)構(gòu),形成了一個包括客戶、中間件和服務(wù)器在內(nèi)的三層次結(jié)構(gòu)及多層次結(jié)構(gòu),為開發(fā)可靠的、可擴(kuò)展的、復(fù)雜的事物密集型應(yīng)用提供了有力的支持。下一頁上一頁構(gòu)件和中間件停止放映12
中間件是構(gòu)件技術(shù)的一種實現(xiàn),是構(gòu)件存在的基礎(chǔ),它的本質(zhì)是對分布式應(yīng)用的抽象,應(yīng)用是在中間件提供的環(huán)境中以構(gòu)件的形式存在。
基于中間件開發(fā)的應(yīng)用是面向需求的構(gòu)件應(yīng)用;構(gòu)件專門用于處理應(yīng)用的業(yè)務(wù)邏輯,而中間件負(fù)責(zé)解決與業(yè)務(wù)無直接關(guān)系的分布式應(yīng)用中的支撐環(huán)境問題(例如,通信、互操作、可靠性、容錯性等)。
構(gòu)件的封裝、設(shè)計與實現(xiàn)隔離,構(gòu)件間的交互通過規(guī)范定義的接口進(jìn)行;中間件在分布式交互模式上都規(guī)定了接口機(jī)制,可以解決構(gòu)件間的交互問題。
中間件將應(yīng)用構(gòu)件與系統(tǒng)資源隔離,使得構(gòu)件開發(fā)者不用考慮下層的系統(tǒng)平臺。中間件提供了構(gòu)件封裝、構(gòu)件交互規(guī)則、構(gòu)件與環(huán)境隔離等機(jī)制,為軟件重用提供了解決方案。·
中間件可實現(xiàn)互操作。下一頁上一頁中間件分類停止放映13①基于遠(yuǎn)程過程調(diào)用RPC(Remote
Procedure
Call)的中間件,被調(diào)用的對象可以在分布系統(tǒng)中的任何物理平臺上。SunSoft的ONC+屬于這種中間件。②面向消息的中間件,支持基于消息機(jī)制的進(jìn)程間通信方式。例如,SunSoft的ToolTalk。③基于對象請求代理ORB(Object
Request
Brokers)的中間件,消息通過ORB進(jìn)行路由選擇,ORB同時處理集成和安全方面的問題。如Microsoft的COM、OMG的CORBA等。④數(shù)據(jù)庫中間件,支持對異構(gòu)的關(guān)系數(shù)據(jù)庫系統(tǒng)的透明訪問。例如Sybase的Open
Server、Oracle的SQLConnect和BEA公司的WebLogic等。上一頁下一頁中間件面臨的問題停止放映14
中間件提供的服務(wù)不是萬能的,它所應(yīng)遵循的一些原則離實際還有很大距離。表現(xiàn)在:
多數(shù)流行的中間件服務(wù)使用專有的API和專有的協(xié)議,使得應(yīng)用建立于單一廠家的產(chǎn)品,來自不同廠家的實現(xiàn)很難互操作。
有些中間件服務(wù)只提供一些平臺的實現(xiàn),從而限制了應(yīng)用在異構(gòu)系統(tǒng)之間的移植。
應(yīng)用開發(fā)者在這些中間件服務(wù)上建立自己的應(yīng)用還要承擔(dān)相當(dāng)大的風(fēng)險,隨著技術(shù)的發(fā)展他們往往還需要重寫自己的系統(tǒng)。下一頁上一頁J2EE技術(shù)簡介
Java平臺的第一個參考實現(xiàn)是
JDK(Java
DevelopmentKit),但
JDK并不支持服務(wù)器端構(gòu)件開發(fā)。為了提供服務(wù)器端部署的企業(yè)級服務(wù),Sun公司開發(fā)了一些EnterpriseAPI。但是
期的這些應(yīng)用服務(wù)器暴露了Enterprise
API的許多問題。為了解決Enterprise
API的問題,Sun公司提出了三個不同的Java平臺:
J2ME(Java
2
Platform,Micro
Edition)是可用于
Java設(shè)備(如Palm
Pilots、呼機(jī)、手表等)開發(fā)平臺。停止放映15
J2SE(Java
2
Platform,Standard
Edition)支持標(biāo)準(zhǔn)
JDK編程,包含基本的Java語言支持、JFC庫及其對
applet和application的支持。
J2EE(Java
2
Platform,Enterprise
Edition)是一個基于Java的完整的企業(yè)級應(yīng)用開發(fā)平臺,它與JavaEnterprise
API有機(jī)地結(jié)合、適合服務(wù)器端構(gòu)件體系結(jié)構(gòu)的開發(fā)。上一頁下一頁J2EE的核心技術(shù)停止放映16下一頁上一頁停止放映
·J2EE的核心技術(shù)17
EJB是J2EE規(guī)約中最重要的部分。EJB提供了讓客戶端使用遠(yuǎn)程分布式對象的框架,規(guī)定了EJB構(gòu)件如何與EJB容器進(jìn)行交互等服務(wù)。RMI-IIOP用于實現(xiàn)Java和CORBA應(yīng)用之間互操作。
Java
名字及目錄接口JNDI提供命名服務(wù)和目錄服務(wù),它是客戶端代碼連接EJB構(gòu)件所必需的關(guān)鍵技術(shù)。
數(shù)據(jù)庫訪問接口JDBC同ODBC一樣,允許程序員使用相同的接口訪問不同的數(shù)據(jù)庫,JDBC還具有跨平臺訪問各種數(shù)據(jù)庫的功能。消息服務(wù)JMS是一套與消息驅(qū)動的中間件通信的API。
Java
Server
Papes(JSP)可以使不懂Java的人也能用Java編寫動態(tài)網(wǎng)頁。
Java接口定義語言IDL通過建立遠(yuǎn)程接口支持Java和CORBA應(yīng)用的通信。Java
基于Java的電子郵件API。EJB技術(shù)上一頁下一頁停止放映18
EJB(Enterprise
Java
Beans)不是一種“產(chǎn)品”,而是為開發(fā)和使用基于事務(wù)和分布對象應(yīng)用的服務(wù)器端構(gòu)件而定義的一種技術(shù)規(guī)約。EJB體系結(jié)構(gòu)相對于CORBA而言,其最大的特點是簡單性,可幫助軟件開發(fā)人員快速地構(gòu)建分布式應(yīng)用系統(tǒng)。
在EJB組件模型中,一個組件本身只需執(zhí)行那些與企業(yè)應(yīng)用的業(yè)務(wù)邏輯密切相關(guān)的代碼,而將組件的生存周期管理命名與查找、并發(fā)控制、安全性、持久性、事物處理等服務(wù)交由組件的運行環(huán)境去執(zhí)行。
EJB的目標(biāo)是為服務(wù)器端構(gòu)件系統(tǒng)定義一個技術(shù)規(guī)范,該規(guī)范能提供一個標(biāo)準(zhǔn)的、分布的、基于OO的體系結(jié)構(gòu);能屏蔽復(fù)雜的系統(tǒng)級功能需求;能兼容CORBA標(biāo)準(zhǔn);具
有與非Java應(yīng)用之間的互操作能力。EJB組件的分類上一頁下一頁停止放映19EJB組件模型將EJB組件劃分為兩大類:實體組件會話組件消息驅(qū)動組件(
EJB2.0還包括第三類)
組件模型對組件類型的劃分實際上是將在應(yīng)用實踐中證明行之有效的設(shè)計模式固化在組件模型中,為開發(fā)人員提供一種簡單、有效的組件開發(fā)與部署途徑。EJB的特點包括:上一頁下一頁停止放映20清晰的體系結(jié)構(gòu):支持多層應(yīng)用體系結(jié)構(gòu)和基于構(gòu)件開發(fā)
簡化的編程模型:EJB構(gòu)件的開發(fā)者只需關(guān)注于業(yè)務(wù)服務(wù)實現(xiàn),復(fù)雜的任務(wù)比如生命周期管理、持久性、事務(wù)處理安全、一致性及資源管理等等都是由EJB容器負(fù)責(zé)。
通用的編程模型:提供各種服務(wù)的高層API,Java是其編程語言。易移植性:可以部署到任何兼容的EJB容器中。支持事務(wù)處理:可通過在代碼外的描述來定義事務(wù)處理。
可擴(kuò)展性:可以根據(jù)應(yīng)用的增長而擴(kuò)展,EJB服務(wù)器往往還提供了負(fù)載平衡。安全性:由EJB服務(wù)器提供資源的訪問權(quán)限控制。下一頁上一頁停止放映COM+技術(shù)簡介21·
COM(構(gòu)件對象模型)是Microsoft提出的第一個構(gòu)件模型。它起源于OLE,當(dāng)時的OLE使用DDE(動態(tài)數(shù)據(jù)交換)機(jī)制來支持程序之間的通信,由于DDE建立在Windows消息機(jī)制基礎(chǔ)上,穩(wěn)定性和效率都很差,由此誕生了
COM。
DCOM(分布構(gòu)件對象模型)是COM技術(shù)在分布式環(huán)境
中的延伸(COM僅支持同一臺計算機(jī)上構(gòu)件之間的互操作)。DCOM用網(wǎng)絡(luò)協(xié)議來代替本地進(jìn)程之間的通信,并針對分布環(huán)境提供了一些新的特性,如網(wǎng)絡(luò)安全性、跨平臺調(diào)用等。
MTS(
Microsoft事務(wù)服務(wù)器)是為滿足企業(yè)應(yīng)用而提供的基礎(chǔ)設(shè)施。MTS可以為分布式企業(yè)應(yīng)用提供服務(wù)器端的構(gòu)件運行和部署環(huán)境,它把企業(yè)應(yīng)用系統(tǒng)的客戶程序、應(yīng)用構(gòu)件和各種資源有機(jī)結(jié)合起來(而COM/DCOM無法
有效地實現(xiàn))。下一頁上一頁停止放映Windows
DNA22
為了使Windows真正成為企業(yè)應(yīng)用平臺,Microsof公司又推出了Windows
DNA(分布式互聯(lián)網(wǎng)應(yīng)用體系結(jié)構(gòu))。它是一個完整的、多層的新一代企業(yè)應(yīng)用體系結(jié)構(gòu),也是一服務(wù)器端的開發(fā)平臺,它包含以下主要產(chǎn)品:Windows
NT/2000:操作系統(tǒng)。DCOM:支持分布式構(gòu)件的核心技術(shù)。MSMQ:消息隊列產(chǎn)品,支持構(gòu)件間的異步通信。MTS:管理構(gòu)件的應(yīng)用服務(wù)器。Microsoft
Wolfpack:支持集群服務(wù)器的軟件。Microsoft
SQL
Server:一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。Microsoft
IIS:Web服務(wù)器。Microsoft
Management
Console:部署和管理工具。工具、數(shù)據(jù)庫、操作系統(tǒng)、編程模型和應(yīng)用服務(wù)等。下一頁上一頁停止放映COM+23·
為了把COM、DCOM和MTS統(tǒng)一起來,形成真正適合于企業(yè)級應(yīng)用的構(gòu)件技術(shù),誕生了COM+。
COM+是一種中間件技術(shù)的規(guī)約,其要點是提供建立在操作系統(tǒng)上的、支持分布式企業(yè)級應(yīng)用的
“服務(wù)”。COM+與Windows
DNA一起,使得用戶可以采用Microsof公司的技術(shù)開發(fā)服務(wù)器端的構(gòu)件。COM+的核心是改進(jìn)的COM/DCOM和MTS的集成,但是COM+增加了一些非常重要的構(gòu)件服務(wù),比如負(fù)載平衡、駐留內(nèi)存數(shù)據(jù)庫、事件模型、隊列服務(wù)等。COM+還支持所謂的申述式編程模型,它允許開發(fā)人員以較通用的方式開發(fā)構(gòu)件,而一些細(xì)節(jié)則留到部署時再確定。下一頁上一頁COM+主要特點停止放映24
真正的異步通信。COM+底層提供了隊列構(gòu)件服務(wù),允許客戶和構(gòu)件進(jìn)行異步通信。
事件服務(wù)。新事件機(jī)制利用系統(tǒng)服務(wù)簡化了事件模型,避免了COM可連接對象機(jī)制的瑣碎細(xì)節(jié),使事件源和事件接收方實現(xiàn)事件功能更加靈活。靈活性。動態(tài)負(fù)載平衡以及駐留內(nèi)存數(shù)據(jù)庫、對象池等系統(tǒng)服務(wù)為COM+的靈活性提供了技術(shù)基礎(chǔ)?!?/p>
可管理和可部署性。COM+申述式編程模型和構(gòu)件管理環(huán)境支持應(yīng)用系統(tǒng)在開發(fā)完成后的管理和部署·
易于開發(fā)。COM+開發(fā)模型比以前的COM構(gòu)件開發(fā)更為簡化。上一頁COM+的基本結(jié)構(gòu)COM+目錄負(fù)載平衡駐留內(nèi)存數(shù)據(jù)庫對象池新的事件模型構(gòu)件管理和部署JIT激活MTS事務(wù)支持資源分發(fā)管理安全模式易于管理DCOM遠(yuǎn)程支持分布式構(gòu)件服務(wù)COM+COM基于接口的編程模式基本的構(gòu)件服務(wù)下一頁停止放映25上一頁CORBA技術(shù)簡介下一頁停止放映26
CORBA(Common
Object
Request
BrokerArchitecture,公共對象請求代理體系結(jié)構(gòu))是OMG制定的、體系結(jié)構(gòu)最完整、最清晰、跨越平臺最多的分布對象模型。通過CORBA接口定義語言IDL
定義接口,使用不同編程語言、不同編譯器實現(xiàn)的構(gòu)件,可以通過對象請求代理ORB進(jìn)行連接,形成一個跨平臺的應(yīng)用。CORBA一般有兩層意思:一是指對象管理組織OMG提出的分布式對象體系結(jié)構(gòu)標(biāo)準(zhǔn);另一層意思是按這種體系結(jié)構(gòu)開發(fā)的中間件產(chǎn)品。CORBA作為一種應(yīng)用級的互聯(lián)標(biāo)準(zhǔn)得到了廣泛的認(rèn)同和應(yīng)用。
CORBA是一套規(guī)約,而不是一個產(chǎn)品,開發(fā)商可以開發(fā)不同的產(chǎn)品來實現(xiàn)CORBA規(guī)約。例如,IBM公司的
ComponentBroker等。上一頁下一頁OMG停止放映27·
OMG是一個開放標(biāo)準(zhǔn)的非盈利組織,其目標(biāo)是制定行業(yè)標(biāo)準(zhǔn)和對象管理標(biāo)準(zhǔn),為應(yīng)用開發(fā)提供一個公共框架,推動構(gòu)件市場的發(fā)展。OMG成立于
1989年,目前已擁有會員近千個,包括許多研究機(jī)構(gòu)、大學(xué)和大公司,如IBM,HP等。CORBA的發(fā)展停止放映28
CORBA規(guī)約的第一代主要集中在為分布式對象定義一個基礎(chǔ)其核心是ORB和IDL。
CORBA
2.0增加了ORB互操作性規(guī)約,主要是基于TCP/IP的IIOP協(xié)議(因特網(wǎng)ORB互聯(lián)協(xié)議)。1995年。CORBA
2.1增加了COM/CORBA互操作規(guī)范。1997年。
CORBA
2.2增添了易移植的對象適配器POA和IDL到Java語言的映射規(guī)約。與此同時,對象管理體系結(jié)構(gòu)OMA中增加了領(lǐng)域接口。1998年。CORBA
3.0增加了CORBA構(gòu)件模型CCM(與COM+和EJB核心概念相似),提供容器(為構(gòu)件提供運行環(huán)境)作為構(gòu)件的運行環(huán)境,而諸如事務(wù)處理、安全處理、事件處理等公下一頁·上一頁
共服務(wù)都是通過公共
API訪問。2001年。但是,目前還沒有成熟的、完全實現(xiàn)CORBA
3.0規(guī)約的產(chǎn)品下一頁上一頁CORBA的主要特征停止放映29
在CORBA環(huán)境下應(yīng)用系統(tǒng)間的互聯(lián)是以對象或程序的調(diào)用方式進(jìn)行的,實現(xiàn)系統(tǒng)間實時互操作。原則上,一個系統(tǒng)內(nèi)部能夠完成的操作,在系統(tǒng)之間通過CORBA都可以實現(xiàn)。
CORBA的OO的特點還保證了各對象的封裝性和
內(nèi)部細(xì)節(jié)的隱蔽性。這不僅可以簡化各種功能的使用,還提高了系統(tǒng)的安全性。
CORBA比較適合于分層結(jié)構(gòu)的應(yīng)用集成,這一技術(shù)比較適合于互聯(lián)網(wǎng)應(yīng)用系統(tǒng)核心業(yè)務(wù)邏輯的應(yīng)用程序的集成。此外,由于目前應(yīng)用服務(wù)器大多提供CORBA接口,這樣利用CORBA技術(shù)完成應(yīng)用程序和平臺之間的無縫連接也比較容易。下一頁上一頁停止放映OMA基準(zhǔn)模型30·
CORBA的基準(zhǔn)模型是OMA。該模型描述了分布式對象系統(tǒng)的基本成分,有四個主要層次:對象服務(wù)是一組系統(tǒng)級的對象,為實現(xiàn)和管理對象提供了基本的功能,包括名字、生存周期服務(wù)事務(wù)服務(wù)、安全服務(wù)等。對象請求代理ORB是核心,它提供了一種機(jī)制,使得對象可以透明地發(fā)送請求和接受響應(yīng)。ORB與對象服務(wù)相結(jié)合,確保符合CORBA基準(zhǔn)的應(yīng)
用構(gòu)件之間有效的通信。公共設(shè)施是適用于眾多應(yīng)用領(lǐng)域的通用構(gòu)件,例如信息管理、系統(tǒng)管理、任務(wù)管理和用戶界面等應(yīng)用對象是專用于特定領(lǐng)域的應(yīng)用構(gòu)件,OMG沒有為它制定標(biāo)準(zhǔn)。下一頁上一頁停止放映接口定義語言IDL31
OMG
IDL是CORBA的重要組成部分,是一種嚴(yán)格定義的
接口定義語言。用OMG
IDL編寫的接口定義能完整地定義接口,并完備地說明每個操作的參數(shù)。OMG
IDL已被ISOORB采納,自1991年公布以來,基本上沒有改變。
OMG
IDL是獨立于具體編程語言的,一個IDL文件可以向多種編程語言映射。CORBA包含IDL向具體編程語言的映射規(guī)約,例如,IDL到C,C++,Java等的映射。
OMG
IDL是獨立于平臺的,由IDL定義的接口可以在不同的ORB和平臺上一致地表達(dá)。
OMG
IDL是一個純規(guī)約,不涉及實現(xiàn)問題,IDL定義的接口不對對象實現(xiàn)進(jìn)行任何約束。IDL將客戶從對象實現(xiàn)細(xì)節(jié)中清晰地分離出來,從而更利于軟件復(fù)用,因此被廣泛接受。下一頁上一頁軟件復(fù)用技術(shù)停止放映32·軟件復(fù)用是指在軟件開發(fā)過程中重復(fù)使用相同或相似軟件元素的過程。軟件復(fù)用是在軟件開發(fā)中避免重復(fù)勞動的解決方案,它使得應(yīng)用系統(tǒng)的開發(fā)不再采用一切從零開始的模式,而是以已有的工作模式為基礎(chǔ),充分利用過去應(yīng)用系統(tǒng)開發(fā)中積累的知識和經(jīng)驗,從而將開發(fā)的重點集中于應(yīng)用的特有構(gòu)成成分。
為了能夠在軟件開發(fā)過程中重用已有的復(fù)用件,必須不斷地進(jìn)行復(fù)用件的積累,并將它們組織成復(fù)用件庫。因此,軟件復(fù)用不僅要解決如何檢索所需的復(fù)用件,還要解決如何選取復(fù)用件、如何組織復(fù)用件庫等問題。這類項目通常稱為軟件復(fù)用項目。
軟件重用過程可借助于支持軟件重用的CASE工具,其主要任務(wù)是:用某種組織結(jié)構(gòu)實現(xiàn)復(fù)用件庫的存儲,提供
友好的人機(jī)界面,幫助用戶瀏覽、檢索和修改復(fù)用件庫,并且對用戶感興趣的復(fù)用件進(jìn)行解釋。上一頁軟件復(fù)用方式分類下一頁停止放映33⑴依據(jù)復(fù)用的對象分類;可以分為:產(chǎn)品復(fù)用指復(fù)用已有的軟件構(gòu)件,通過構(gòu)件集成得到新系統(tǒng)。產(chǎn)品復(fù)用是目前現(xiàn)實的、主流的途徑。過程復(fù)用指復(fù)用已有的軟件開發(fā)過程,過程復(fù)用依賴于軟件自動化技術(shù)的發(fā)展。⑵依據(jù)對可復(fù)用信息進(jìn)行復(fù)用的方式分類,可分為:白盒復(fù)用指已有構(gòu)件并不能完全符合用戶要求,需要根據(jù)用戶需求進(jìn)行適應(yīng)性修改后才能使用。黑盒復(fù)用指對已有構(gòu)件不需作任何修改,通過構(gòu)件組裝的方式直接進(jìn)行復(fù)用。這是目前的研究熱點,也是將來的發(fā)展趨勢。上一頁可復(fù)用的復(fù)用件下一頁停止放映34Caper
Jones定義了可候選的十種復(fù)用件:⑴項目計劃:計劃的基本結(jié)構(gòu)和內(nèi)容(如,SQA計劃)。⑵成本估計:有可能復(fù)用對某個功能的成本估計。⑶體系結(jié)構(gòu):可能創(chuàng)建一組類屬的體系結(jié)構(gòu)模板(例如,事務(wù)處理體系結(jié)構(gòu)),并將模板作為可復(fù)用的設(shè)計框架。⑷需求模型和規(guī)約:類和對象的模型和規(guī)約是可復(fù)用的,用傳統(tǒng)軟件工程方法開發(fā)的分析模型(例如,數(shù)據(jù)流圖)也是可復(fù)用的。⑸設(shè)計:用傳統(tǒng)方法開發(fā)的體系結(jié)構(gòu)、數(shù)據(jù)、接口和過程化設(shè)計是復(fù)用的候選者,更常見的是,系統(tǒng)和對象設(shè)計是可復(fù)用的。⑹源代碼:驗證過的程序構(gòu)件(用兼容的程序設(shè)計語言書寫的)。⑺用戶和技術(shù)文檔:對特定的不同應(yīng)用,可復(fù)用大部分用戶和技術(shù)文檔。⑻用戶界面:可能是最廣泛被復(fù)用的(例如GUI)。⑼數(shù)據(jù):包括:內(nèi)部表、列表和記錄結(jié)構(gòu),以及文件和完整的數(shù)據(jù)庫。⑽測試用例:一旦設(shè)計或代碼構(gòu)件將被復(fù)用,相關(guān)的測試用例也可復(fù)用。下一頁⑴建立內(nèi)部的軟件復(fù)用計劃。這樣一個計劃可以幫助組織控制軟件的質(zhì)量和成本。⑵要求將軟件復(fù)用作為任何技術(shù)和管理培訓(xùn)的內(nèi)容。對OO的培訓(xùn)尤其應(yīng)該如此。⑶按照內(nèi)部的軟件復(fù)用計劃,尋求對軟件復(fù)用有積極貢獻(xiàn)的工具和庫。⑷鼓勵采用已被證明為可以促進(jìn)軟件復(fù)用的方法和工具。⑸跟蹤并測度軟件復(fù)用以及軟件復(fù)用的影響;應(yīng)客觀評價,而不是主觀臆測。⑹管理上必須積極地鼓勵軟件的復(fù)用。⑺認(rèn)識除“模塊”外,工具、測試數(shù)據(jù)、設(shè)計、計劃、環(huán)境及其他軟件均可復(fù)用。上一頁
⑻
最重要的是認(rèn)識到軟件復(fù)用不是“平常的業(yè)務(wù)”,大多數(shù)建立復(fù)用途徑的一些建議停止放映35技術(shù)和管理人員是不接受軟件復(fù)用的概念的。上一頁下一頁軟件復(fù)用面臨的問題停止放映36⑴管理問題。沒有相應(yīng)的鼓勵機(jī)制等。⑵復(fù)用的障礙。⑶技術(shù)方面的問題⑷法律問題·
顯然,很多其他相關(guān)問題對復(fù)用也有影響,政治的、文化的、財政的、市場的、以及產(chǎn)品化等方面的問題也必須考慮。上一頁復(fù)用的障礙下一頁停止放映37
自負(fù);太多的開發(fā)人員認(rèn)為不是他們親自編寫的程序不可能是好程序;
檢索問題。如何從龐大的復(fù)用件庫中所需要的復(fù)用件;幾乎沒有相應(yīng)的復(fù)用培訓(xùn);
復(fù)用代價昂貴。有人估計,僅使一個構(gòu)件可復(fù)用,就將至少增加60%的成本;
雖然存在軟件復(fù)用的CASE工具或構(gòu)件,但大多數(shù)軟件開發(fā)者并不使用它們;
經(jīng)濟(jì)利益方面。一些開發(fā)人員盡力避免編寫那些太通用的例程,唯恐使自己失業(yè)。技術(shù)方面的問題上一頁下一頁停止放映38
采用軟件復(fù)用可以降低開發(fā)成本,但如果其原件存在的某些問題代碼,可能會導(dǎo)致其他采用該代碼的系統(tǒng)具有相同的問題代碼;這種情況稱之為繼承性缺陷。
因此當(dāng)原件的問題代碼被修改后,往往無法自動更新實用軟件中相應(yīng)的代碼;最終導(dǎo)致實用軟件中的問題代碼依舊存在。這種非但沒有降低開發(fā)成本,反而增加維護(hù)消耗的復(fù)用技術(shù)顯然是失敗的。法律問題上一頁下一頁停止放映39·
合同軟件帶來的法律問題。有些軟件合同規(guī)定軟件產(chǎn)品是屬于客戶的。因此,當(dāng)軟件開發(fā)人員為另一個客戶開發(fā)一個新產(chǎn)品時,如果他復(fù)用了另一個客戶產(chǎn)品中的一個構(gòu)件,在本質(zhì)上是侵犯第一個客戶的版權(quán)。下一頁上一頁C/S技術(shù)停止放映40
客戶機(jī)/服務(wù)器系統(tǒng)也稱C/S(Client/Server)系統(tǒng),它是基于局域網(wǎng)/廣域網(wǎng)的系統(tǒng)。
在C/S中存在著服務(wù)器和客戶端。為了充分利用客戶機(jī)的計算能力,計算和事務(wù)處理在服務(wù)器和客戶機(jī)之間分配。
服務(wù)器承擔(dān)數(shù)據(jù)的集中管理、通信和客戶管理的任務(wù),因為數(shù)據(jù)在服務(wù)器端,對數(shù)據(jù)的處理和計算都在服務(wù)器端執(zhí)行。
而人機(jī)界面和一些需要實時響應(yīng)的事件或人機(jī)交互的處理等在客戶端進(jìn)行,這些程序都運行在客戶端。C/S系統(tǒng)往往需要數(shù)據(jù)庫服務(wù)器。C/S系統(tǒng)體系結(jié)構(gòu)特征上一頁下一頁停止放映41
計算和處理分布在服務(wù)器和客戶機(jī)之間。數(shù)據(jù)管理集中在服務(wù)器端。軟件駐留在服務(wù)器和客戶機(jī)。C/S應(yīng)用系統(tǒng)的特征上一頁下一頁停止放映42
分布數(shù)據(jù)。出于安全性和負(fù)載平衡的考慮,數(shù)據(jù)庫可以分布在多個數(shù)據(jù)庫服務(wù)器上。
分布過程。不同的過程(事務(wù)處理、數(shù)據(jù)庫連接等)可以在不同服務(wù)器上進(jìn)行。
客戶為中心。把需要在客戶端執(zhí)行的程序和定制的程序放在客戶端,以使客戶快速得到響應(yīng)。把對數(shù)據(jù)進(jìn)行處理的過程放在數(shù)據(jù)庫服務(wù)器端,以加快數(shù)據(jù)處理速度。
異構(gòu)硬件和軟件。在C/S體系結(jié)構(gòu)中很容易加入多層結(jié)構(gòu),屏蔽不同的硬件和軟件。例如,加入應(yīng)用服務(wù)器可以基于不同的操作系統(tǒng)和計算機(jī)主機(jī),同樣客戶端安裝的中間件可以基于不同的客戶端系統(tǒng),例如,Linux,Windows。下一頁上一頁C/S技術(shù)目標(biāo)停止放映可。服務(wù)器有負(fù)載平衡的能力就可以允許不斷增加并發(fā)客43
集成處理資源。把客戶端、服務(wù)器端的處理能力充分利用集成在一起完成系統(tǒng)的功能要求。
降低開發(fā)資源要求。在客戶端和服務(wù)器端運行的程序分別放,使得程序調(diào)試方便,開發(fā)比較簡單,需要的資源也減在傳統(tǒng)的數(shù)據(jù)庫應(yīng)用體系結(jié)構(gòu)中(基于主機(jī)-多終端),數(shù)據(jù)庫是應(yīng)用程序“私有的”。雖然它也可以將數(shù)據(jù)文件放在某臺機(jī)器上供不同的用戶共同訪問,但所有的操作、規(guī)都是在一個包羅萬象的應(yīng)用程序內(nèi)部實現(xiàn)的。應(yīng)用程序因具有最大的復(fù)雜性。
降低硬件和軟件的要求。在C/S系統(tǒng)中,客戶機(jī)既有部分處理能力,價格相對較低,可以降低系統(tǒng)軟硬件成本。
降低系統(tǒng)維護(hù)成本。因為在服務(wù)器端的處理和計算程序只在服務(wù)器端維護(hù),與客戶機(jī)無關(guān),而客戶端程序比較簡單所以系統(tǒng)維護(hù)較方便,成本較低?!?/p>
可擴(kuò)充能力強(qiáng)。C/S應(yīng)用很容易擴(kuò)充,只要C/S聯(lián)入網(wǎng)絡(luò)即C/S系統(tǒng)構(gòu)成·
C/S結(jié)構(gòu)發(fā)展經(jīng)歷了兩個階段:兩層結(jié)構(gòu)和三(多)層結(jié)構(gòu)。上一頁下一頁停止放映44上一頁兩層結(jié)構(gòu)C/S系統(tǒng)下一頁停止放映45
第一層是客戶端軟件,由應(yīng)用程序和相應(yīng)的數(shù)據(jù)庫鏈接程序組成,企業(yè)的業(yè)務(wù)過程都在程序中表現(xiàn)。
第二層包括數(shù)據(jù)庫服務(wù)器,根據(jù)客戶端軟件的請求進(jìn)行數(shù)據(jù)庫操作,然后將結(jié)果傳送給客戶端軟件。
兩層應(yīng)用軟件的開發(fā)工作主要集中在客戶端,客戶端軟件不但要完成用戶界面和數(shù)據(jù)顯示的工作,還要完成一部分對商業(yè)和應(yīng)用邏輯的處理工作。
兩層結(jié)構(gòu)的C/S系統(tǒng)僅能在各自的客戶機(jī)和數(shù)據(jù)庫服務(wù)器之間使用,分割了界面和數(shù)據(jù),使得客戶機(jī)要管理復(fù)雜的軟件,導(dǎo)致“肥胖”客戶機(jī)的產(chǎn)生。
兩層C/S系統(tǒng)不能進(jìn)行有效的擴(kuò)展,使這些系統(tǒng)不能支持大量用戶的訪問和高容量事務(wù)處理的應(yīng)用。上一頁三(多)層結(jié)構(gòu)C/S系統(tǒng)下一頁停止放映46
客戶機(jī)上只安裝具有用戶界面和簡單的數(shù)據(jù)處理功能的應(yīng)用程序,負(fù)責(zé)處理與用戶的交互和與應(yīng)用服務(wù)器的交互。
而將商業(yè)和應(yīng)用邏輯的處理功能移到中間層——應(yīng)用服務(wù)器上。應(yīng)用服務(wù)器負(fù)責(zé)處理商業(yè)和應(yīng)用邏輯,接受客戶端應(yīng)用程序的請求,然后根據(jù)商業(yè)和應(yīng)用邏輯將這個請求轉(zhuǎn)化為數(shù)據(jù)庫請求后與數(shù)據(jù)庫服務(wù)器交互,并將與數(shù)據(jù)庫服務(wù)器交互的結(jié)果傳送給客戶端應(yīng)用程序。
數(shù)據(jù)庫服務(wù)器軟件根據(jù)應(yīng)用服務(wù)器發(fā)送的請求進(jìn)行數(shù)據(jù)庫操作,并將操作的結(jié)果傳送給應(yīng)用服務(wù)器。三層C/S結(jié)構(gòu)優(yōu)點上一頁下一頁停止放映47
整個系統(tǒng)被分成不同的邏輯塊,層次清晰,一層的改動不會影響其他層次;能夠使“肥胖”的客戶機(jī)變“瘦”;
開發(fā)和管理工作向服務(wù)器端轉(zhuǎn)移,使得分布的數(shù)據(jù)處理成為可能;管理和維護(hù)變得相對簡單。C/S結(jié)構(gòu)的局限性上一頁下一頁停止放映48
第一,C/S結(jié)構(gòu)的計算能力過于分散,網(wǎng)絡(luò)中服務(wù)器和客戶機(jī)的數(shù)目正發(fā)生“細(xì)胞”分裂,使得系統(tǒng)的管理費用以幾何級數(shù)的方式增長。
第二,C/S結(jié)構(gòu)中數(shù)據(jù)庫信息的使用只限于局域網(wǎng)的范圍內(nèi),無法利用Internet的網(wǎng)絡(luò)資源。
第三,在C/S結(jié)構(gòu)中,無論多小的企業(yè)都必須安裝自己的服務(wù)器,而服務(wù)器和服務(wù)器軟件的管理和維護(hù)都是非常復(fù)雜的工作,需要專門人員負(fù)責(zé),小企業(yè)往往無力購買高性能的服務(wù)器和聘用專門人員。因此,C/S結(jié)構(gòu)不利于小企業(yè)計算機(jī)應(yīng)用的發(fā)展。下一頁上一頁應(yīng)用子系統(tǒng)設(shè)計的指導(dǎo)原則停止放映49⑴表示/交互子系統(tǒng)通常放置在客戶端?;趫D形界面的應(yīng)用及程序駐留在客戶端,這可快速響應(yīng)用戶的交互請求。尤其是在實現(xiàn)圖形圖像等復(fù)雜應(yīng)用時,對于需要與本地資源(如調(diào)用本地磁盤文件等)進(jìn)行交互性的操作,更是需要駐留在客戶端的程序。這樣做還可以降低網(wǎng)絡(luò)流量。⑵如果需要多個客戶共享數(shù)據(jù),則數(shù)據(jù)庫及數(shù)據(jù)庫管理系統(tǒng)應(yīng)該放在服務(wù)器端。⑶對DB進(jìn)行操作的存儲過程放在DB服務(wù)器上。對數(shù)據(jù)庫進(jìn)行插入、更新、刪除的存儲過程或觸發(fā)器程序最好放在相應(yīng)的DB服務(wù)器上,以減少DB連接、網(wǎng)絡(luò)傳輸?shù)臅r間消耗,降低DB連接過載發(fā)生的可能性。⑷用于引用的靜態(tài)數(shù)據(jù)應(yīng)該分配到客戶端。把數(shù)據(jù)存放在需要它的最近地方,不必在網(wǎng)絡(luò)中傳輸,減少服務(wù)器壓力。下一頁上一頁基于Web工程設(shè)計基礎(chǔ)停止放映50
基于Web技術(shù)的Intranet近年來正受到廣泛的關(guān)注,這種以TCP/IP協(xié)議為基礎(chǔ)、以Web技術(shù)為中心的應(yīng)用正吸
引著越來越多的企業(yè)以更快的速度、更低的費用去創(chuàng)建企業(yè)的應(yīng)用系統(tǒng)。
Web技術(shù)吸引人的地方是采用超鏈接和多媒體信息。Web服務(wù)器使用HTML描述網(wǎng)絡(luò)的資源,創(chuàng)建網(wǎng)頁,并以
HTML數(shù)據(jù)文件的形式保存,以供Web瀏覽器閱讀。
Web瀏覽器是一個用于文檔檢索和顯示的客戶應(yīng)用程序,并通過HTTP協(xié)議與Web服務(wù)器相連。
目前,流行的IE和Netscape
Navigator除提供基本的文檔檢索、顯示和導(dǎo)航特性外,還支持HTML的高級顯示(如表和幀)以及Active
X、Java、Javascript等特性。B/S技術(shù)上一頁同的Web服務(wù)器發(fā)出的SQL請求,管理數(shù)據(jù)庫。下一頁停止放映51
瀏覽器/服務(wù)器系統(tǒng)也稱B/S(Browser/Server)系統(tǒng),它也是基于局域網(wǎng)/廣域網(wǎng)的系統(tǒng)。它的客戶端是標(biāo)準(zhǔn)的瀏覽器(如IE等),服務(wù)器端為標(biāo)準(zhǔn)的Web服務(wù)器,可協(xié)同應(yīng)用服務(wù)器響應(yīng)瀏覽器的請求。B/S是一種三層結(jié)構(gòu)的系統(tǒng):
第一層客戶機(jī)是用戶與整個系統(tǒng)的接口??蛻魬?yīng)用程序就是一個通用的瀏覽器。
第二層是Web服務(wù)器,它負(fù)責(zé)啟動相應(yīng)的進(jìn)程來響應(yīng)處理請求,并動態(tài)生成一串嵌入了處理結(jié)果的HTML代碼,并返回給客戶端的瀏覽器。如果客戶機(jī)提交的請求包括數(shù)據(jù)的存取,Web服務(wù)器還需與DB服務(wù)器協(xié)同完成這一處理
工作。第三層數(shù)據(jù)庫服務(wù)器的任務(wù)類似于C/S模式,負(fù)責(zé)協(xié)調(diào)不B/S系統(tǒng)的特點上一頁業(yè)行政手續(xù)簡化,節(jié)省人力、物力。下一頁停止放映52⑴B/S系統(tǒng)采用B/W/D結(jié)構(gòu)。即客戶端只安裝一個瀏覽器(Browser)。中間層是Web服務(wù)器。再根據(jù)需要安裝小支持庫,如Java或VB的DDL以處理特殊應(yīng)用。⑵B/S結(jié)構(gòu)簡化了客戶端。客戶機(jī)上只需安裝通用的瀏覽器軟件。節(jié)省客戶機(jī)的硬盤空間與內(nèi)存.⑶簡化了系的開發(fā)和維護(hù)。系統(tǒng)的開發(fā)者只需把所有的功能都實現(xiàn)在Web服務(wù)器上,并就不同的功能為各個組別的用戶設(shè)置權(quán)限就可以了。相對于C/S模式,B/S的維護(hù)具有更大的靈活性。如果一個公司有上千臺客戶機(jī),并且分布在不同的地點,那么便于維護(hù)將顯得更加重要。⑷用戶操作更簡單??蛻舳酥挥脼g覽器。不用培訓(xùn)即可使用⑸B/S適用于網(wǎng)上信息發(fā)布,這使得企業(yè)的大部分書面文件可以被電子文件取代,從而提高了企業(yè)的工作效率,使企上一頁B/S系統(tǒng)設(shè)計的框架和特點·
內(nèi)容設(shè)計、網(wǎng)頁的制作和網(wǎng)站結(jié)構(gòu)設(shè)計是并行的。下一頁停止放映53
B/S系統(tǒng)本質(zhì)上是一個查詢系統(tǒng),其客戶端的輸入輸出很簡單,所以它的開發(fā)比C/S系統(tǒng)有很大的不同。
B/S系統(tǒng)的開發(fā)過程實際上是網(wǎng)站開發(fā)過程。包括確定網(wǎng)站目標(biāo)、對網(wǎng)站進(jìn)行規(guī)劃、估算成本、開發(fā)進(jìn)度,估計風(fēng)險、建立網(wǎng)站的需求模型及分析需求,之后進(jìn)入工程階段。
在工程階段與C/S系統(tǒng)有很大差別。B/S一般是三層結(jié)構(gòu)系統(tǒng),對每一層都要進(jìn)行設(shè)計。此外由于B/S是查詢系統(tǒng),因此導(dǎo)航系統(tǒng)設(shè)計和界面設(shè)計就顯得格外重要。
網(wǎng)站開發(fā)的主要工作不是編程,而是網(wǎng)頁設(shè)計/制作,大量工作是使用制作工具進(jìn)行文本、聲音、圖形和圖片等的設(shè)計和編輯。上一頁B/S系統(tǒng)設(shè)計要點后驗收,正式發(fā)布。下一頁停止放映54⑴設(shè)計目標(biāo)。首先要確定目標(biāo)、用戶以及內(nèi)容范圍。包括:信息目標(biāo):向終端用戶提供哪些特定的信息內(nèi)容?應(yīng)用目標(biāo):在網(wǎng)站上完成哪些任務(wù)?用戶目標(biāo):網(wǎng)站的用戶群,他們的背景、愛好和知識。商業(yè)目標(biāo):網(wǎng)站靠什么賺錢?如何實現(xiàn)商業(yè)目標(biāo)?⑵計劃和分析。內(nèi)容分析:標(biāo)識要處理的信息、它們相互關(guān)系及信息的層次結(jié)構(gòu)。交互分析:描述交互方式,例如哪些需要用戶提交。功能分析:給出用戶交互界面、定義系統(tǒng)功能等。配置分析:要描述網(wǎng)站的基礎(chǔ)設(shè)施和服務(wù)器環(huán)境。例如它是
Internet還是Intranet?是否需要數(shù)據(jù)庫服務(wù)器?采用什么Web服務(wù)器?客戶端需要配置什么樣的瀏覽器?網(wǎng)站是托管還是租用虛擬服務(wù)器等。在硬件方面需要那些設(shè)備?是否需要防火墻?⑶工程、發(fā)布和用戶評價。工程即網(wǎng)站的設(shè)計和開發(fā)。發(fā)布包括本地調(diào)試、測試、建立網(wǎng)站,網(wǎng)站試運行。用戶評價就是進(jìn)行用戶測試,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版智慧城市建設(shè)項目委托投標(biāo)協(xié)議書范本3篇
- 2025版新企業(yè)股東協(xié)議書范本:企業(yè)創(chuàng)新發(fā)展計劃3篇
- 2025版新車銷售與二手車置換優(yōu)惠套餐合同范本2篇
- 2025版學(xué)校食堂勞務(wù)承包與營養(yǎng)膳食研究開發(fā)協(xié)議3篇
- 2025年度個人房產(chǎn)買賣合同違約責(zé)任約定書
- 2025個人合伙企業(yè)股份清算轉(zhuǎn)讓協(xié)議3篇
- 2025版?zhèn)€人借款擔(dān)保合同標(biāo)準(zhǔn)化模板4篇
- 2025年全球及中國水平運動輸送機(jī)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球高牌號取向硅鋼行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球牽引型AGV行業(yè)調(diào)研及趨勢分析報告
- 《徐霞客傳正版》課件
- 江西硅博化工有限公司年產(chǎn)5000噸硅樹脂項目環(huán)境影響評價
- 高端民用航空復(fù)材智能制造交付中心項目環(huán)評資料環(huán)境影響
- 貴州省黔東南州2024年七年級上學(xué)期數(shù)學(xué)期末考試試卷【附答案】
- 量子醫(yī)學(xué)成像學(xué)行業(yè)研究報告
- DB22T 3268-2021 糧食收儲企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化評定規(guī)范
- 辦事居間協(xié)議合同范例
- 正念減壓療法詳解課件
- 學(xué)校校本課程《英文電影鑒賞》文本
- 華為HCSA-Presales-IT售前認(rèn)證備考試題及答案
- GB 30254-2024高壓三相籠型異步電動機(jī)能效限定值及能效等級
評論
0/150
提交評論