自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺談組件復(fù)用與服務(wù)復(fù)用

開發(fā) 項(xiàng)目管理
在一個(gè)企業(yè)中,根據(jù)不同的場景,復(fù)用的形態(tài)和方式是不同的,大體可以分為組件復(fù)用和服務(wù)復(fù)用兩種方式。本文對這兩種方式進(jìn)行了簡單的描述。

復(fù)用是一個(gè)很不錯(cuò)的概念,深得“不要重復(fù)制造輪子”的思想精髓。然而具體實(shí)施起來一定會(huì)遇到很多問題,就好像那個(gè)DRY理論一樣,不是隨隨便便就可以做到的。下面對開發(fā)過程中的兩種復(fù)用形式:組件復(fù)用與服務(wù)復(fù)用進(jìn)行了簡單的分析。

我們經(jīng)常談到復(fù)用,在一個(gè)企業(yè)中,根據(jù)不同的場景,復(fù)用的形態(tài)和方式是不同的,大體可以分為組件復(fù)用和服務(wù)復(fù)用兩種方式。組件是按照一定的標(biāo)準(zhǔn)封裝的軟件實(shí)體,可以是為完成某種功能提供的API的集合,也可以是完成某一個(gè)技術(shù)和業(yè)務(wù)功能的實(shí)體;服務(wù)是通過組件暴露出來的供外部調(diào)用的接口和協(xié)議信息。服務(wù)不包括具體功能邏輯實(shí)體,靠組件來實(shí)現(xiàn)。

企業(yè)架構(gòu)中通常提到的技術(shù)復(fù)用和業(yè)務(wù)復(fù)用,可以簡單地映射到組件和服務(wù)上。技術(shù)層面的復(fù)用一般是一些API、或者抽象出的框架,比如日志,它可以稱之為組件,但是日志組件提供了記錄日志的API,并沒有包括具體的日志內(nèi)容,我們在使用的時(shí)候是通過日志組件提供的API來記錄相應(yīng)的日志內(nèi)容;再比如業(yè)界提供的一些框架,它是對應(yīng)用的高度抽象,自身也不包括具體的應(yīng)用或業(yè)務(wù)邏輯,這些需要我們在軟件實(shí)施過程中自己灌輸進(jìn)去。并且技術(shù)層面的復(fù)用往往是每個(gè)系統(tǒng)中都有該組件的相應(yīng)實(shí)體,比如A系統(tǒng)中會(huì)有日志組件、B系統(tǒng)中也會(huì)有日志組件。業(yè)務(wù)層面的復(fù)用通常采用調(diào)用服務(wù)的方式,是一種遠(yuǎn)程訪問,業(yè)務(wù)服務(wù)通常在一個(gè)企業(yè)中物理上只有一個(gè)實(shí)體,其他的系統(tǒng)通過服務(wù)來調(diào)用,比如銀行目前的渠道有網(wǎng)上銀行、ATM、手機(jī)銀行、電話銀行、柜臺(tái)等,這些系統(tǒng)中是沒有存取款業(yè)務(wù)邏輯實(shí)體的,存取款的交易都是通過調(diào)用主機(jī)相應(yīng)的服務(wù)來實(shí)現(xiàn)的。

所以,對于組件和服務(wù)的管理其實(shí)也有不同的策略,組件要管理的是軟件實(shí)體,服務(wù)管理的是服務(wù)的接口和協(xié)議信息,并且服務(wù)有一系列的特征,這個(gè)網(wǎng)上也有很多描述,可以根據(jù)不同需求調(diào)整服務(wù)的實(shí)現(xiàn)。當(dāng)前服務(wù)的協(xié)議通常有WebService、HTTP、EJB等,對應(yīng)其組件的實(shí)現(xiàn)可以采用不同的技術(shù),比如Java、C/C++等等。

以上對組件復(fù)用與服務(wù)復(fù)用的一些淺談,希望對大家有所幫助。

【編輯推薦】

  1. 初探敏捷開發(fā)
  2. 理解敏捷開發(fā):需求處理與齊頭并進(jìn)
  3. 討論:敏捷開發(fā)真的對架構(gòu)設(shè)計(jì)不利嗎?
  4. 再談敏捷開發(fā)的好處及敏捷外包的前景
  5. 再談敏捷開發(fā) 從成本到收益的優(yōu)化
責(zé)任編輯:yangsai 來源: BlogJava
相關(guān)推薦

2023-08-24 16:45:16

應(yīng)用開發(fā)父自定義組件

2023-04-12 11:36:07

波分復(fù)用WDM

2020-05-20 14:25:45

Reactreact.js前端

2018-08-23 08:58:38

復(fù)用著相代碼

2012-03-07 09:02:29

代碼復(fù)用

2013-01-29 10:41:58

Java復(fù)用HTTP

2020-11-02 08:23:36

shell腳本Linux

2020-03-03 22:15:58

byobuSSH會(huì)話Linux

2019-01-08 13:32:38

Nginx服務(wù)器IO復(fù)用

2022-02-04 22:33:56

端口網(wǎng)絡(luò)編程

2009-06-24 17:05:10

2009-04-30 10:07:43

VS.NET.NET復(fù)用數(shù)據(jù)庫

2022-05-25 08:27:30

tmux軟件

2023-01-09 10:04:47

IO多路復(fù)用模型

2024-06-18 08:57:42

Repository模式數(shù)據(jù)

2021-05-31 06:50:47

SelectPoll系統(tǒng)

2020-10-14 09:11:44

IO 多路復(fù)用實(shí)現(xiàn)機(jī)

2009-06-29 18:09:12

多路復(fù)用Oracle

2020-08-04 07:47:59

代碼模板模式

2023-01-30 07:58:30

繼承代碼復(fù)用
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)