優(yōu)點:一個較低的層可以被不同的層所使用。層使標準化更容易,因為我們可以清楚地定義級別??梢栽趯觾冗M行更改,而不會影響其他層。
缺點:不是普遍適用的。在某些情況下,某些層可能會被跳過。
二. 客戶端-服務器模式優(yōu)點:很好地建立一組服務,用戶可以請求他們的服務。
缺點:請求通常在服務器上的單獨線程中處理。由于不同的客戶端具有不同的表示,進程間通信會導致額外開銷。
三. 主從設備模式優(yōu)點:準確性——將服務的執(zhí)行委托給不同的從設備,具有不同的實現(xiàn)。
缺點:從設備是孤立的:沒有共享的狀態(tài)。主-從通信中的延遲可能是一個問題,例如在實時系統(tǒng)中。這種模式只能應用于可以分解的問題。
四. 管道-過濾器模式優(yōu)點:展示并發(fā)處理。當輸入和輸出由流組成時,過濾器在接收數(shù)據(jù)時開始計算。輕松添加過濾器,系統(tǒng)可以輕松擴展。過濾器可重復使用。 可以通過重新組合一組給定的過濾器來構建不同的管道。
缺點:效率受到慢的過濾過程的限制。從一個過濾器移動到另一個過濾器時的數(shù)據(jù)轉換開銷。
五. 代理模式優(yōu)點:允許動態(tài)更改、添加、刪除和重新定位對象,這使開發(fā)人員的發(fā)布變得透明。
缺點:要求對服務描述進行標準化。
六. 點對點模式優(yōu)點:支持分散式計算。對任何給定節(jié)點的故障處理具有強大的健壯性。在資源和計算能力方面具有很高的可擴展性。
缺點:服務質量沒有保證,因為節(jié)點是自愿合作的。是很難得到保證的。性能取決于節(jié)點的數(shù)量。
七. 事件總線模式優(yōu)點:新的發(fā)布者、訂閱者和連接可以很容易地添加。對高度分布式的應用程序有效。
缺點:可伸縮性可能是一個問題,因為所有消息都是通過同一事件總線進行的。
優(yōu)點:可以輕松地擁有同一個模型的多個視圖,這些視圖可以在運行時連接和斷開。
缺點:增加復雜性??赡軐е略S多不必要的用戶操作更新。
九. 黑板模式優(yōu)點:很容易添加新的應用程序。擴展數(shù)據(jù)空間的結構很簡單。
缺點:修改數(shù)據(jù)空間的結構非常困難,因為所有應用程序都受到了影響??赡苄枰胶驮L問控制。
十. 解釋器模式優(yōu)點:高度動態(tài)的行為是可行的。對終端用戶編程性提供好處。提高靈活性,因為替換一個解釋程序很容易。
缺點:由于解釋語言通常比編譯后的語言慢,因此性能可能是一個問題。