資源描述:
《軟件開發(fā)方法軟件開發(fā)技術》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、第1章軟件開發(fā)方法(三)軟件開發(fā)技術計算機教學實驗中心問題的提出什么是構件、中間件?什么是CORBA、DOM和JEB?什么是軟件復用?什么是C/S?B/S?C/S和B/S的區(qū)別?……21.了解目前主要的軟件開發(fā)技術2.了解構件技術3.了解軟件復用技術4.了解CORBA、DCOM和J2EE技術5.了解C/S和B/S技術及開發(fā)基礎3軟件開發(fā)技術構件技術軟件復用技術C/S技術B/S技術4構件技術軟件產(chǎn)業(yè)和軟件工程技術正面臨著新的挑戰(zhàn)。而傳統(tǒng)的軟件設計思想根本無法應對。在這一背景下,構件技術應運而生。構件
2、技術是基于OO技術上的更高級的抽象。它把底層的對象集合打成包,組成功能“插件”。基于構件技術的軟件生產(chǎn)就是把已存在的構件組裝(集成)到當前軟件系統(tǒng)的框架結構中,從而生產(chǎn)出新的軟件產(chǎn)品。可以預見,構件技術是軟件產(chǎn)業(yè)化革命的必然發(fā)展趨勢。5構件技術概述OO技術是在“數(shù)據(jù)十算法”的基礎上提升了對事物的認識方法。而構件技術則在“對象+算法”的基礎上將認識事物的角度從對象個體本身提升到個體在群體中的作用。這個認識的提高具有本質(zhì)的不同。從抽象程度來看,OO技術已達到了類級重用(代碼重用),它以類為封裝的單位。
3、而構件是對一組類的組合進行封裝,可以將底層的多個邏輯組合成高層次上的粒度更大的新構件,甚至直接封裝到一個系統(tǒng),使模塊的重用從代碼級、對象級、架構級到系統(tǒng)級都可能實現(xiàn)。顯然,構件技術將抽象的程度提到了一個更高的層次。這種思想正在改變著軟件的開發(fā)方法和人們的思維方式。6構件的屬性構件是可獨立配置的單元,因此構件必須自包容。構件強調(diào)與環(huán)境和其他構件的分離,因此構件的實現(xiàn)是嚴格封裝的,外界沒機會或沒必要知道構件內(nèi)部的實現(xiàn)細節(jié)。構件可以在適當?shù)沫h(huán)境中被復合使用,因此構件需要提供清楚的接口規(guī)范,可以與環(huán)境交互
4、??梢钥闯觯瑯嫾匾u了對象的封裝特性,但同時并不局限于一個對象,其內(nèi)部可以封裝一個或多個類、原型對象甚至過程,結構是靈活的。7構件的使用每個構件都需要先注冊才能使用。構件是通過它們的接口特征來標識的,它們所提供的服務與訪問方式是接口特征的一部分內(nèi)容。要考慮的因素包括:應用編程接口(API)。構件所需的開發(fā)和集成。運行需求,例如資源的使用(內(nèi)存和硬盤),時間或速度以及網(wǎng)絡協(xié)議。服務需求,例如操作系統(tǒng)的接口,或需要其他構件的支持等。安全特征,例如訪問控制和身份驗證協(xié)議等。嵌入式設計假定,有特定的數(shù)值/
5、非數(shù)值算法使用。異常處理。8實現(xiàn)構件技術的必備條件有標準軟件體系結構,保證構件間通信協(xié)議統(tǒng)一,實現(xiàn)同步和異步操作控制,突破本地空間限制,充分利用網(wǎng)絡環(huán)境。構件有標準接口,保證系統(tǒng)可分解成多個功能獨立的單元,用構件組裝而成。構件獨立于編程語言。構件提供版本兼容,來實現(xiàn)應用系統(tǒng)的擴展和更新。9構件設計因為構件依賴于平臺環(huán)境,所以設計時有特殊要求:⑴以接口為核心,使用開放標準。統(tǒng)一的開放標準有,CORBA、DCOM、EJB等。⑵構件語義的描述要形式化。在不同標準中,它們都有自己的形式化語義規(guī)定。如在EJ
6、B中有會話Bean和實體Bean事務描述符等。⑶提煉封裝構件過程要嚴格記錄。由于構件允許第三方使用,所以要保證第三方用戶能正確理解構件設計思想,就必須記錄每次提煉的變化。通常,要用版本來管理。⑷設計模式也可以重用?;跇嫾南到y(tǒng)開發(fā)的優(yōu)點之一是重用,它的目標是代碼、設計、解決方案都能重用。⑸利用開發(fā)工具。利用開發(fā)工具創(chuàng)建構件和應用軟件。工具如Jbuilder、EJBMaker等。10中間件構件是依賴于平臺環(huán)境的。那么在分布式異構環(huán)境中如何應用構件呢?中間件就是基于跨環(huán)境的構件應用而發(fā)展起來的。中間
7、件是介于應用層和網(wǎng)絡層之間的一個功能層次,是使應用系統(tǒng)獨立于由異構操作環(huán)境(操作系統(tǒng)、硬件平臺及通信協(xié)議等)組成的開發(fā)環(huán)境。中間件擴展了客戶/服務器結構,形成了一個包括客戶、中間件和服務器在內(nèi)的三層次結構及多層次結構,為開發(fā)可靠的、可擴展的、復雜的事物密集型應用提供了有力的支持。11構件和中間件中間件是構件技術的一種實現(xiàn),是構件存在的基礎,它的本質(zhì)是對分布式應用的抽象,應用是在中間件提供的環(huán)境中以構件的形式存在?;谥虚g件開發(fā)的應用是面向需求的構件應用;構件專門用于處理應用的業(yè)務邏輯,而中間件負責
8、解決與業(yè)務無直接關系的分布式應用中的支撐環(huán)境問題(例如,通信、互操作、可靠性、容錯性等)。構件的封裝、設計與實現(xiàn)隔離,構件間的交互通過規(guī)范定義的接口進行;中間件在分布式交互模式上都規(guī)定了接口機制,可以解決構件間的交互問題。中間件將應用構件與系統(tǒng)資源隔離,使得構件開發(fā)者不用考慮下層的系統(tǒng)平臺。中間件提供了構件封裝、構件交互規(guī)則、構件與環(huán)境隔離等機制,為軟件重用提供了解決方案。中間件可實現(xiàn)互操作。12中間件分類①基于遠程過程調(diào)用RPC(RemoteProcedureCall)的中間件,