1、软件体系结构Beijing Jiaotong UniversityZhenyan Ji分层架构架构风格分层系统分层系统构件: 层连接器:层间的交互协议分层架构分层架构展示层逻辑层数据访问层1.如果任意一层只依赖与其直接相邻的下一层,那么它是严格分层结构2. 如果一层可依赖其下面的任意一层,那么它是宽松分层结构每层提供一组相关的服务;每层只使用下面的层分层系统分层系统Program AProgram BProgram CProgram DLayer3Layer2Layer1分层系统分层系统层级组织结构“多层客户端-服务器”每层暴露一个接口(API)以被上层调用每层可充当服务器: 给上层提供服务客
2、户端: 下层服务的消费者连接器是层级交互协议分层系统单内核OS& 微内核 OS分层系统分层系统TCP/IP协议也是分层系统DataDataDataDataHeaderHeaderHeaderHeaderHeaderHeaderApplication Layer(Telnet,FTP,SMTP,)Transport Layer(TCP,UDP,)Internet Layer(IP)Network Access Layer(Ether,Token Ring,)分层系统分层系统SubsystemFacade分层系统优点每层都提供一系列服务,层的内聚性高.每层都对其他层隐藏私有信息每层只用到更低级的层,以限制耦合度容易对当前层进行替换和修改。对某层的修改最多影响相邻的两层。分层系统优点每层都是内聚的,只和低层耦合因此它很容易被重用、替换或互换。数据库的变化只会影响数据存储/访问层,浏览器的变化只会影响展示层只要接口不变,每层可有不同的实现。分层系统缺点严格的分层可能会导致性能问题,具体取决于层数建立清晰的分层结构并不总是很容易。