管道/过滤器架构风格的优点和不足
管道/過(guò)濾器風(fēng)格的軟件架構(gòu)具有許多很好的特點(diǎn):
(1)使得軟構(gòu)件具有良好的隱蔽性和高內(nèi)聚、低耦合的特點(diǎn);
(2)允許設(shè)計(jì)者將整個(gè)系統(tǒng)的輸入/輸出行為看成是多個(gè)過(guò)濾器的行為的簡(jiǎn)單合成;
(3)支持軟件重用。只要提供適合在兩個(gè)過(guò)濾器之間傳送的數(shù)據(jù),任何兩個(gè)過(guò)濾器都可被連接起來(lái);
(4)系統(tǒng)維護(hù)和增強(qiáng)系統(tǒng)性能簡(jiǎn)單。新的過(guò)濾器可以添加到現(xiàn)有系統(tǒng)中來(lái);舊的可以被改進(jìn)的過(guò)濾器替換掉;
(5)允許對(duì)一些如吞吐量、死鎖等屬性的分析;
(6)支持并行執(zhí)行。每個(gè)過(guò)濾器是作為一個(gè)單獨(dú)的任務(wù)完成,因此可與其他任務(wù)并行執(zhí)行。
但是,這樣的系統(tǒng)也存在著若干不利因素。
(1)通常導(dǎo)致進(jìn)程成為批處理的結(jié)構(gòu)。這是因?yàn)殡m然過(guò)濾器可增量式地處理數(shù)據(jù),但它們是獨(dú)立的,所以設(shè)計(jì)者必須將每個(gè)過(guò)濾器看成一個(gè)完整的從輸入到輸出的轉(zhuǎn)換;
(2)不適合處理交互的應(yīng)用。當(dāng)需要增量地顯示改變時(shí),這個(gè)問(wèn)題尤為嚴(yán)重;
(3)因?yàn)樵跀?shù)據(jù)傳輸上沒(méi)有通用的標(biāo)準(zhǔn),每個(gè)過(guò)濾器都增加了解析和合成數(shù)據(jù)的工作,這樣就導(dǎo)致了系統(tǒng)性能下降,并增加了編寫(xiě)過(guò)濾器的復(fù)雜性。
總結(jié)
以上是生活随笔為你收集整理的管道/过滤器架构风格的优点和不足的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 单片机笔记六:占空比(Duty) 偏压比
- 下一篇: P2P原理以及如何实现(整理)