什么是后端应用程序分层,后端应用分层经验总结

您所在的位置:网站首页 航模是什么服务 什么是后端应用程序分层,后端应用分层经验总结

什么是后端应用程序分层,后端应用分层经验总结

2023-05-25 03:55| 来源: 网络整理| 查看: 265

原标题:什么是后端应用程序分层,后端应用分层经验总结

什么是后端应用程序分层,例如:你使用springmvc开发web应用程序,项目是用三层架构分包的,这些都使用分层的思想。

MVC模式由三部分组成:

视图:负责界面显示和处理用户交互。例如,前端应用程序

控制器:协调视图层和模型层之间的交互。控制器接收来自视图层的请求,并决定处理哪些模型以及处理后显示结果的视图。

模型:模型保存所有数据、状态和程序逻辑。接收控制器转发的查看请求,处理请求并返回结果。

在实际开发中,视图层可以通过JSP/HTML/CSS或Vue/React来实现,控制器层可以通过Servlet来接收和响应请求,模型层可以通过JavaBean来实现。SpringMVC框架集成了上述功能,可以很容易地用它开发MVC应用程序。

MVC模式中的模型层工作量太大,不符合单一责任的原则。随着系统的日益复杂,程序的维护变得越来越困难。因此,模型层分为业务逻辑层(负责程序逻辑)和数据访问层(负责与数据库的交互)。模型层中只剩下一个薄薄的层,负责传输数据。然后视图和控制器被组合到显示层,应用程序演变成传统的三层架构。

应用程序结构清晰,耦合度低,通过分层升级和维护非常容易。开发人员只需要专注于一层,不必担心自己的设计会影响其他层,这对提高软件质量大有裨益。如果你想改变某一层的具体实现代码,只要这一层的接口保持稳定,就不需要修改它的上层。很容易用新的实现替换原始层的实现。即使这一层的接口发生变化,也只影响相邻的上层,修改工作量小

并且可以在没有意外风险的情况下控制错误。

分层架构的一个重要原则是,每一层只能与它下面的层耦合。层次结构分为严格层次结构和松散层次结构两种类型。在严格的层次结构中,一个层只能与它下面的层耦合;在松散分层的体系结构中,允许一个层与它下面的任何层耦合。三层体系结构是一种严格的层次结构,它的缺点是可能导致每个层次的修改。这种修改尤其体现在自顶向下的方向上,例如,表示层应该添加数据显示,业务逻辑层应该计算数据并返回,数据访问层可以从其他数据源读取数据。

展开全文

领域驱动设计是一种松散分层的体系结构,整个系统分为基础设施层、领域层、应用层和表示层。领域层是系统的核心,是一个抽象而稳定的层次。它包括业务流程、业务规则和功能接口。在域级别定义的接口在基础设施级别实现,因此只要高级接口稳定,就可以替换低级实现。这被称为依赖倒置原则,其中顶层不与底层紧密耦合,也不依赖于特定的实现,并用于改善由每一层引起的级联修改。

阿里巴巴推荐的层级结构介绍如下。与三层体系结构相比,增加了开发API层和通用逻辑层(管理层)。下图:

开发API层:它定义了一个层提供的外部接口,不依赖于其他层,是提供给其他系统调用的SDK开发工具包。服务层依赖并实现业务逻辑。外部访问将公开为RPC接口或Http接口,而内部调用将引用特定的实现。

终端显示层:每一端的模板渲染和执行显示的层。主要有速度渲染、JS渲染、JSP渲染、移动显示等。前端开发框架React/Vue已经承担了页面渲染、路由、状态管理的工作,所以这一层是根据自己的需要添加的。

Web层:为客户端访问提供

询问界面,主要是转发访问控制和检查各种基本参数。

服务层:相对特定的业务逻辑服务层。

经理层:通用业务处理层。它位于服务层和Dao层之间,主要功能如下:

1)封装第三方平台,对返回结果进行预处理,转换异常信息,适应上层接口,相当于DDD中的防腐层。

2)服务层通用能力的下沉,如缓存方案、中间件通用处理等。

3)与DAO层交互并复用多个DAO的组合。

DAO层:数据访问层,与底层的MySQL、Oracle、Hbase、OB数据交互。

第三方服务:包括其他部门的RPC服务接口、其他公司的基础平台和HTTP接口。该层不需要是单独的层,但可以移动到管理器层进行第三方服务封装。

外部数据接口:提供给外部(应用程序)数据存储服务的接口,主要用于数据需要二次处理和迁移的场景。返回搜狐,查看更多

责任编辑:



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3