详解分层架构 Layered Architecture

作者:禅与计算机程序设计艺术

1.简介

Layered Architecture(层次化架构)是一种软件设计方法,将系统分成多个层次或抽象级别,每个层都由一组相互协作的模块和服务构成。各层之间通过接口协议进行通信,并可通过向上层提供的服务或功能接口集调用下层的服务或功能。这种结构允许多重继承、插件化、弹性扩展等特性。它使得系统更容易理解、开发和维护,降低耦合度、提高代码重用率,同时提升性能、可靠性和安全性。在很多复杂系统中,层次化架构可以有效地减少依赖,提升可移植性、可复用性、可测试性、可维护性。因此,层次化架构也被广泛应用于云计算、大数据、物联网、车联网、电信网络、移动互联网、区块链等领域。

2.概念

模块(Module)

模块(Module)是层次化架构中的基本单元,用于实现具体的功能。一个模块通常是一个独立的、可执行的代码文件,它对外暴露一组接口,用于向其它模块或者系统调用它的功能。模块之间的通信仅限于接口的调用和返回,而不涉及具体的数据交换。

服务(Service)

服务(Service)是层次化架构中的另一种基本单元。一个服务代表了一组相关模块协同工作完成特定任务的一套功能。服务提供了一组功能接口,供其他模块调用。与模块不同的是,服务还负责实现业务逻辑和数据处理。服务与模块之间的通信也是基于接口调用和返回。

接口(Interface)

接口(Interface)是层次化架构中的重要概念。在面向对象的编程语言里,接口是一个抽象概念,用于描述类对外所公开的方法和属性。在层次化架构中,接口表示了一个服务或模块对外所暴露的方

猜你喜欢

转载自blog.csdn.net/universsky2015/article/details/132899774