提供企業(yè)信息化管理解決方案
企業(yè)低成本營(yíng)銷(xiāo)解決方案
Toggle navigation
首頁(yè)
關(guān)于我們
自主產(chǎn)品
服務(wù)優(yōu)勢(shì)
合作伙伴
合作聲明
聯(lián)系方式
服務(wù)項(xiàng)目
企業(yè)微信定制開(kāi)發(fā)
提供技術(shù)解決方案
微信小程序開(kāi)發(fā)
微信公眾賬號(hào)深度開(kāi)發(fā)
軟件定制開(kāi)發(fā)
手機(jī)APP開(kāi)發(fā)
企業(yè)管理軟件開(kāi)發(fā)
企業(yè)網(wǎng)站建設(shè)
資訊動(dòng)態(tài)
經(jīng)典案例
軟件開(kāi)發(fā)案例
網(wǎng)站建設(shè)案例
手機(jī)建站案例
微信開(kāi)發(fā)案例
小程序開(kāi)發(fā)案例
手機(jī)軟件開(kāi)發(fā)案例
聯(lián)系我們
濟(jì)南軟件開(kāi)發(fā)
/
>
最新資訊
>
軟件開(kāi)發(fā)
基于構(gòu)件的軟件開(kāi)發(fā)實(shí)踐
人氣:
2018-05-12 13:51:50
一、構(gòu)件
軟件開(kāi)發(fā)
過(guò)程
基于構(gòu)件的
軟件開(kāi)發(fā)
(CBSD)
通過(guò)整合已有的構(gòu)件來(lái)完成大型軟件系統(tǒng)的開(kāi)發(fā)
,
其核心就是構(gòu)件級(jí)的可重用。
CBSD
通過(guò)提高系統(tǒng)的可擴(kuò)展性和可維護(hù)性來(lái)減少
軟件開(kāi)發(fā)
的費(fèi)用
,
更快的整合系統(tǒng)
,
并能有效的降低大型系統(tǒng)的維護(hù)和升級(jí)壓力。應(yīng)用系統(tǒng)的軟件構(gòu)造過(guò)程包括分析構(gòu)件、設(shè)計(jì)構(gòu)件、實(shí)現(xiàn)構(gòu)件和組裝構(gòu)件。
CBSD
的理論基礎(chǔ)是在大型軟件系統(tǒng)中有相當(dāng)?shù)牟糠謺?huì)重復(fù)出現(xiàn)
,
這些共同的部分應(yīng)該通過(guò)構(gòu)件組合起來(lái)
,
而不是一遍一遍的重寫(xiě)。
在
CBSD
中
,
通過(guò)寫(xiě)代碼來(lái)構(gòu)建系統(tǒng)讓位于使用已有的構(gòu)件來(lái)裝配和整合系統(tǒng)。在傳統(tǒng)的
軟件開(kāi)發(fā)
模式中
,
系統(tǒng)整合往往是系統(tǒng)實(shí)現(xiàn)的收尾階段的任務(wù)。在基于構(gòu)件的
軟件開(kāi)發(fā)
中則相反
,
整合處于整個(gè)開(kāi)發(fā)過(guò)程的核心地位。正因如此
,
決定構(gòu)件的獲得、重用和使用的關(guān)鍵在于它能否與其它構(gòu)件整合在一起。
(
一
)
構(gòu)件選取
。構(gòu)件選取是將過(guò)去開(kāi)發(fā)的組件按照適合新系統(tǒng)的原則選取出來(lái)的過(guò)程。也可以是在構(gòu)件交易中購(gòu)買(mǎi)合適構(gòu)件的過(guò)程。這個(gè)過(guò)程甚至延伸到開(kāi)發(fā)構(gòu)件和維護(hù)構(gòu)件的質(zhì)量保證。
構(gòu)件選取包括兩個(gè)階段
:
發(fā)現(xiàn)階段和評(píng)估階段。在發(fā)現(xiàn)階段
,
構(gòu)件將會(huì)被明確屬性。如構(gòu)件的功能
(
能提供什么樣的服務(wù)
),
構(gòu)件的接口
(
使用的方法
)
。這些屬性還應(yīng)包括一些不能孤立看待的要求
,
如構(gòu)件的可靠性、可用性、可擴(kuò)展性。在有些情況下也要考慮構(gòu)件的非技術(shù)特性
,
如提供者的市場(chǎng)占有率
,
構(gòu)件開(kāi)發(fā)組織的過(guò)程和成熟度等。
二、系統(tǒng)的實(shí)現(xiàn)
(
一
)
系統(tǒng)中的構(gòu)件實(shí)現(xiàn)
軟件工程網(wǎng)絡(luò)課堂教學(xué)系統(tǒng)的開(kāi)發(fā)環(huán)境為前臺(tái)開(kāi)發(fā)選擇
ASP,
后臺(tái)采用
SQL Server 2000
數(shù)據(jù)庫(kù)
,
構(gòu)件模型通過(guò)
B/S
構(gòu)架的三層體系結(jié)構(gòu)
(
表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪(fǎng)問(wèn)層
)
實(shí)現(xiàn)。
現(xiàn)以課件構(gòu)件的開(kāi)發(fā)過(guò)程為例
,
說(shuō)明一個(gè)構(gòu)件中的用戶(hù)界面
/
表示層、功能
/
業(yè)務(wù)邏輯層和數(shù)據(jù)訪(fǎng)問(wèn)層的實(shí)現(xiàn)。
1.
課件上傳構(gòu)件的用戶(hù)界面層實(shí)現(xiàn)。表示層的用戶(hù)界面可分成動(dòng)態(tài)和靜態(tài)兩種。通過(guò)
Dreamweave
的模板實(shí)現(xiàn)靜態(tài)界面功能
,
通過(guò)
ASP
技術(shù)生成動(dòng)態(tài)頁(yè)面。動(dòng)態(tài)頁(yè)面中常見(jiàn)的動(dòng)作是
:
解釋用戶(hù)請(qǐng)求
;
分發(fā)這些請(qǐng)求到相應(yīng)的業(yè)務(wù)邏輯
;
選擇下一個(gè)顯示視圖
;
生成和傳送下一個(gè)視圖給用戶(hù)。
2.
課件上傳構(gòu)件的功能
/
業(yè)務(wù)邏輯層實(shí)現(xiàn)。課件上傳的業(yè)務(wù)邏輯層的作用是將用戶(hù)上傳的文件存入數(shù)據(jù)庫(kù)
,
并將與文件相關(guān)的說(shuō)明在用戶(hù)界面層上顯示出來(lái)。出于系統(tǒng)安全性的考慮
,
在構(gòu)件設(shè)計(jì)時(shí)
,
對(duì)文件格式進(jìn)行了限制
,
只能上傳
RAR
壓縮文件
,
并按照上傳時(shí)間以
“
年
+
月
+
日
+
分
+
秒”的數(shù)字組合為文件重新命名
,
這將有效避免文件重名。
該層實(shí)現(xiàn)上使用
VBScript
腳本語(yǔ)言構(gòu)造了一個(gè)類(lèi)模塊
(add.asp)
。該類(lèi)包括如下屬性
:MMtitle(
課件標(biāo)題
)
、
MMteacher(
上傳用戶(hù)
(
系統(tǒng)自動(dòng)生成
))
、
MMunit(
所屬章節(jié)
)
、
MMdiscrib(
內(nèi)容說(shuō)明
)
、
set upload(
上傳路徑
)
、
set file(
存儲(chǔ)路徑
(
系統(tǒng)自動(dòng)生成
))
。
3.
課件上傳構(gòu)件的數(shù)據(jù)訪(fǎng)問(wèn)層實(shí)現(xiàn)。在系統(tǒng)數(shù)據(jù)庫(kù)的開(kāi)發(fā)過(guò)程中
,
為了方便今后數(shù)據(jù)庫(kù)的維護(hù)與重用
,
將其具體功能如查詢(xún)、插入等操作封裝到一個(gè)構(gòu)件
(kejian.asp)
中。
(
二
)
基于構(gòu)件的系統(tǒng)組裝
1.
原子構(gòu)件的組裝,F(xiàn)以課件上傳構(gòu)件為例
,
說(shuō)明原子構(gòu)件的組裝過(guò)程。原子構(gòu)件組裝的思想是將構(gòu)件模型中涉及到的三個(gè)層次組裝成構(gòu)件。通過(guò)原子構(gòu)件的組裝
,
以上用戶(hù)界面、功能
/
業(yè)務(wù)和數(shù)據(jù)訪(fǎng)問(wèn)三個(gè)層次的成分組合成一個(gè)完整的課件上傳構(gòu)件。
在上述三個(gè)構(gòu)件中
,
功能
/
業(yè)務(wù)層處于用戶(hù)界面層之下、數(shù)據(jù)訪(fǎng)問(wèn)層之上
,
因此以功能
/
業(yè)務(wù)層構(gòu)件
add.asp
作為組裝的基礎(chǔ)。其具體組裝過(guò)程為
:
將用戶(hù)界面層構(gòu)件
module.asp
用
VBScript
腳本進(jìn)行引用。引用語(yǔ)句為
:
〈
!--#include file="module.asp"--
〉
數(shù)據(jù)訪(fǎng)問(wèn)層調(diào)用采用面向?qū)ο蠓绞?span lang="EN-US" style="font-size:14px;">,
將類(lèi)
FileInfo
和類(lèi)
upload_file
通過(guò)內(nèi)部接口與類(lèi)
kejian
組裝成一個(gè)高內(nèi)聚低偶合的原子構(gòu)件
,
再通過(guò)外部接口與功能構(gòu)件
add.asp
連接。
2.
復(fù)合構(gòu)件的組裝。復(fù)合構(gòu)件是由多個(gè)原子構(gòu)件組裝后形成的獨(dú)立構(gòu)件
,
封裝在文件夾中
,
構(gòu)件之間既沒(méi)有數(shù)據(jù)上的耦合
,
也沒(méi)有行為上的耦合
,
故采用黑盒方法進(jìn)行組裝。在組裝時(shí)
,
通過(guò)接口綁定建立復(fù)合構(gòu)件組裝的外部接口和內(nèi)部接口的對(duì)應(yīng)關(guān)系。通過(guò)各種不同的連接件可以完成一些復(fù)雜的接口綁定
,
以實(shí)現(xiàn)所需的復(fù)合構(gòu)件。復(fù)合構(gòu)件的外部接口采用擴(kuò)展連接件。由于擴(kuò)展連接件據(jù)具有可擴(kuò)展的特性
,
由其組裝成的復(fù)合構(gòu)件也具有可擴(kuò)展的特性
,
同時(shí)內(nèi)部接口是基于消息傳遞的
,
從而使組裝出來(lái)的復(fù)合構(gòu)件具有動(dòng)態(tài)性。
本系統(tǒng)中復(fù)合構(gòu)件有公告發(fā)布管理構(gòu)件、課件發(fā)布管理構(gòu)件、作業(yè)發(fā)布批閱構(gòu)件、作業(yè)下載提交構(gòu)件、在線(xiàn)測(cè)試構(gòu)件、試題管理構(gòu)件、學(xué)習(xí)論壇構(gòu)件和消息交流構(gòu)件。其功能都封裝在獨(dú)立的文件夾中
,
其外部接口為各自文件夾下的
index.asp
頁(yè)面。在該頁(yè)面的功能菜單中給出了不同的功能按鈕
,
連接構(gòu)件的內(nèi)部接口。
上一篇:
APP軟件開(kāi)發(fā)模式探討
下一篇:
微信小程序之崔大福珠寶
關(guān)于我們
自主產(chǎn)品
服務(wù)優(yōu)勢(shì)
合作伙伴
合作聲明
聯(lián)系方式
服務(wù)項(xiàng)目
企業(yè)微信定制開(kāi)發(fā)
提供技術(shù)解決方案
微信小程序開(kāi)發(fā)
微信公眾賬號(hào)深度開(kāi)發(fā)
軟件定制開(kāi)發(fā)
手機(jī)APP開(kāi)發(fā)
企業(yè)管理軟件開(kāi)發(fā)
企業(yè)網(wǎng)站建設(shè)
最新案例
軟件開(kāi)發(fā):濟(jì)南德眾汽配CRM系統(tǒng)
軟件開(kāi)發(fā):心愿紙業(yè)業(yè)務(wù)管理系統(tǒng)
關(guān)于我們
公司簡(jiǎn)介
服務(wù)項(xiàng)目
合作伙伴、合作聲明
聯(lián)系方式
濟(jì)南軟件開(kāi)發(fā)
自主產(chǎn)品介紹
BoRaCRM2.0
BoRaSME
B2C、B2B商城定制開(kāi)發(fā)
微信小程序定制開(kāi)發(fā)
直播帶貨小程序
聯(lián)系方式
24小時(shí)電話(huà):18954195455
聯(lián)系電話(huà):0531-82963489
公司地址:濟(jì)南匯展香格里拉北塔2927室
濟(jì)南小程序開(kāi)發(fā)
©Copyright 2013-2015 濟(jì)南小溪暢流網(wǎng)絡(luò)科技有限公司 |
濟(jì)南軟件開(kāi)發(fā)專(zhuān)家
|
ICP備案號(hào):魯ICP備14035376號(hào)
315838801
0531-82963489
TEL:18653147458