區分層次的目的即為了“高內聚,低耦合”的思想。
優點
1、開發人員可以只關注整個結構中的其中某一層; 2、可以很容易的用新的實現來替換原有層次的實現; 3、可以降低層與層之間的依賴; 4、有利于標準化; 5、利于各層邏輯的復用。
缺點
1、降低了系統的性能。這是不言而喻的。如果不采用分層式結構,很多業務可以直接造訪數據庫,以此獲取相應的數據,如今卻必須通過中間層來完成。 2、有時會導致級聯的修改。這種修改尤其體現在自上而下的方向。如果在表示層中需要增加一個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和數據訪問層中都增加相應的代碼。