📜  软件架构模式的类型

📅  最后修改于: 2022-05-13 01:57:00.370000             🧑  作者: Mango

软件架构模式的类型

先决条件:软件架构基础

在了解类型之前,了解软件架构模式的含义很重要。所以,让我们快速了解它是什么。

软件架构:
软件架构是构建软件的蓝图。它显示了软件的整体结构、其中的组件集合,以及它们在隐藏实现的同时如何相互交互。

这有助于软件开发团队清楚地传达如何根据客户的要求构建软件。

有多种方法可以组织软件架构中的组件。软件架构中不同的预定义组件组织称为软件架构模式。尝试和测试了很多模式。他们中的大多数都成功地解决了各种问题。在每种模式中,组件的组织方式都不同,以解决软件架构中的特定问题。

好吧,我希望您不想因阅读无穷无尽的软件架构模式而感到无聊。这就是为什么在多种软件架构模式中,我们将看到一些最重要和最常用的模式。

不同的软件架构模式:

  1. 分层图案
  2. 客户端-服务器模式
  3. 事件驱动模式
  4. 微内核模式
  5. 微服务模式

让我们一一详细了解。

1.分层图案:
顾名思义,这种模式中的组件(代码)被分成子任务层,它们相互排列。

每一层都有独特的任务要做,所有的层都是相互独立的。由于每一层都是独立的,因此可以在不影响其他层的情况下修改层内的代码。

它是设计大多数软件时最常用的模式。该层也称为“N 层架构”。基本上,这种模式有 4 层。

  1. 表示层(我们查看数据并将数据输入应用程序的用户界面层。)
  2. 业务层(该层负责根据请求执行业务逻辑。)
  3. 应用层(该层充当“表示层”和“数据层”之间通信的媒介。
  4. 数据层(该层有一个用于管理数据的数据库。)

非常适合:

电子商务 Web 应用程序开发,如亚马逊。

2.客户端-服务器模式:
客户端-服务器模式有两个主要实体。它们是一个服务器和多个客户端。

这里服务器拥有资源(数据、文件或服务),客户端向服务器请求特定资源。然后服务器处理请求并做出相应的响应。

以这种模式开发的软件示例:

  • 电子邮件。
  • 万维网。
  • 文件共享应用程序。
  • 银行等...

所以这种模式适合开发示例中列出的那种软件。

3. 事件驱动模式:
事件驱动架构是一种敏捷方法,其中软件的服务(操作)由事件触发。

那么,事件是什么意思?

当用户在使用 EDA 方法构建的应用程序中执行操作时,会发生状态更改并生成称为事件的反应。

例如:一个新用户填写注册表并点击Facebook上的注册按钮,然后为他创建一个FB帐户,这是一个事件。

非常适合:

使用 JavaScript 构建网站和一般的电子商务网站。

4.微内核模式:
微内核模式有两个主要组成部分。它们是核心系统和插件模块。

  • 核心系统处理应用程序的基本和最小操作。
  • 插件模块处理扩展功能(如额外功能)和定制处理。

让我们想象一下,您已经成功构建了一个聊天应用程序。该应用程序的基本功能是您可以在没有互联网连接的情况下与世界各地的人发短信。一段时间后,您想在应用程序中添加语音消息功能,然后您就成功添加了该功能。您可以将该功能添加到已开发的应用程序中,因为微内核模式有助于您将功能添加为插件。

微内核模式非常适合:

基于产品的应用程序和调度应用程序。我们喜欢不断为我们的大脑提供多巴胺刺激的新功能。例如 Instagram reels、YouTube Shorts 等等,它们以数字方式让我们大饱眼福。所以这种模式最适合应用程序开发。

5.微服务模式:
组合起来形成实际应用程序的小服务的集合是微服务模式的概念。不是构建更大的应用程序,而是为应用程序的每个服务(函数)独立构建小程序。这些小程序捆绑在一起成为一个成熟的应用程序。

因此,当应用程序以微服务模式构建时,添加新功能和修改现有微服务而不影响其他微服务不再是挑战。

微服务模式应用中的模块是松耦合的。因此它们易于理解、可修改和可扩展。

示例Netflix 是最流行的软件内置微服务架构示例之一。这种模式最适合具有小组件的网站和 Web 应用程序。

就这样!

架构模式决定了即将构建的软件的命运。并且没有构建任何类型软件的一站式解决方案。所以选择最适合你的!