架构模式和架构风格有什么区别? [英] What's the difference between Architectural Patterns and Architectural Styles?

查看:78
本文介绍了架构模式和架构风格有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

软件架构 - 基础、理论和实践中,我可以找到两者的定义.问题是我不明白他们每个人用简单的英语表达的意思:

架构模式

<块引用>

架构模式是架构设计决策的命名集合,适用于重复出现的设计问题,参数化以说明该问题出现的不同软件开发环境.

建筑风格

<块引用>

架构风格是架构设计决策的命名集合,它们 (1) 适用于给定的开发环境,(2) 限制特定于该环境中特定系统的架构设计决策,以及 (3) 引出有益的每个结果系统的质量.

每一个是什么意思,它们之间有什么区别?

解决方案

架构模式是一种解决反复出现的架构问题的方法.例如,MVC 解决了 UI 与模型分离的问题.Sensor-Controller-Actuator 是一种模式,可以帮助您解决面对多种输入感官的驱动问题.

另一方面,建筑风格只是对反复出现的建筑设计的一个名称.与模式相反,它不存在解决"问题.

Pipe&filter 不能解决任何特定问题,它只是一种组织代码的方式.客户端/服务器,主程序 &子程序和抽象数据类型/OO,相同.

此外,一个架构可以包含多种架构风格,而每种架构风格又可以使用多种架构模式.

In Software Architecture - Foundations, Theory and Practice, I can find definitions for both. The problem is that I don't get what each one of them means in plain English:

Architectural Pattern

An Architectural Pattern is a named collection of architectural design decisions that are applicable to a recurring design problem parameterized to account for different software development contexts in which that problem appears.

Architectural Style

An Architectural Style is a named collection of architectural design decisions that (1) are applicable in a given development context, (2) constrain architectural design decisions that are specific to a particular system within that context, and (3) elicit beneficial qualities in each resulting system.

What does each one mean and what are the differences between them?

解决方案

An Architectural Pattern is a way of solving a recurring architectural problem. MVC, for instance, solves the problem of separating the UI from the model. Sensor-Controller-Actuator, is a pattern that will help you with the problem of actuating in face of several input senses.

An Architectural Style, on the other hand, is just a name given to a recurrent architectural design. Contrary to a pattern, it doesn't exist to "solve" a problem.

Pipe&filter doesn't solve any specific problem, it's just a way of organizing your code. Client/server, Main program & subroutine and Abstract Data Types / OO, the same.

Also, a single architecture can contain several architectural styles, and each architectural style can make use of several architectural patterns.

这篇关于架构模式和架构风格有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆