02. 系统架构

系统架构

应用系统的整体架构,有两种:三层架构和MVC。目的都是降低系统的耦合度。
系统的复杂度:就是系统的耦合度

1.什么是三层架构

视图层View,服务层Service,持久层DAO。该架构主要用于单体应用。

  • View层:用于接收用户提交的请求
  • Service层:系统的业务逻辑实现部分。约定优于配置。
  • DAO层:直接操作数据库的代码

该架构中,采用面向抽象编程,即上层对下层的调用,是通过接口实现的,而下层对上层提供真正服务提供者,是下层接口的实现类。接口是相同的,具体的实现类不同。

2.高内聚的原则:

一个类只做一种事
一个方法只做一件事
写且只写一次

3.MVC架构

MVC架构本身对应的是三层架构中的视图层,其中M层和三层模型的服务层对接,由服务层完成实际的业务逻辑和数据库操作

  • M:Model模型,分为数据模型Entity和业务模型Service
    承载数据,并对用户提交请求进行计算的模块。数据模型bean:专门承载用户的数据,如Student,User类;业务模型bean:指Service或Dao对象,专门用于处理用户提交的请求。
  • V:View视图,为用户提供使用界面,与用户直接交互。
  • C:Controller:控制器,处理用户请求,用于将用户请求转发给相应的Model进行处理,并根据Model的计算结果向用户提供响应。

比如:M:JavaBean、Service、Dao,V:Jsp,C:Servlet

4.设计原则
  • 开:开闭原则,对扩展开放,对修改关闭。即模块原有代码不变的情况下,对模块功能进行扩展
  • 口:接口隔离原则,一个类对另一个类的依赖应该是最小的接口。使用多个专用接口比使用一个总接口要好,用不同的服务来提供组合服务。富接口类会导致客户程序之间不必要的耦合,当一个客户要求更改接口类的某个接口时,其他客户也要更新,所以客户程序应该仅仅依赖他们实际需要的方法
  • 合:组合/聚合原则,在一个新的对象里面,尽量用已有的对象作为新对象的一部分,新对象通过委派已有对象来复用功能,即尽量用组合,尽量不要继承。
  • 里:里式替换原则,所有引用基类的地方,必须透明的使用其子类的对象,只要父类可以使用的地方,子类也应该可以使用,而且替换为子类不产生异常和错误。
  • 最:最少知识原则(迪米特法则),一个对象对其他对象应该尽可能少的了解,如果两个类不是必须直接通信,就应该用第三类进行转发。
  • 单:单一职责原则,一个类应该只完成一种事
  • 依:依赖倒置原则,模块间的依赖通过抽象类或接口发生,实现类之间不直接依赖,接口和抽象类不依赖实现类,实现类依赖接口或抽象类
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值