软件架构设计模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件架构设计模式相关的知识,希望对你有一定的参考价值。
你能告诉我什么是可用的软件架构设计模式吗?
为了详细说明我的问题,我想阅读不同的架构设计模式,并确定哪些适合我的项目要求?
例如,有企业应用程序设计模式,企业集成设计模式,ESB模式,SOA模式等。
模式出现在许多层面。架构模式(即架构风格)通常是范围最大的,涵盖系统的基本组织。设计模式处于多个协作对象的级别。 Bernd对Fowler和其他企业模式的建议是一个很好的建议。只要认识到这些模式往往比这些架构模式更具体:
- 分层(即虚拟机模式)
- 泥球大球
- 管道和过滤器
- 批量顺序
- 以模型为中心(共享数据)
- 发布 - 订阅
- 客户端服务器(和N层)
- 点对点
- MapReduce的
体系结构模式通常适用于系统的运行时结构,但也可以应用于其模块或其硬件分配。一个常见的错误是认为分层模式在它真正适用于系统模块时(即,它的编译时依赖性)适用于运行时。当然,您可以在运行时镜像模块结构
我的书Just Enough Software Architecture, Fairbanks (2010)详细讨论了这些模式。其中大部分也包括在其他书籍中,包括Garlan & Shaw (1996),Taylor, Medvidovic, & Dashovy (2009)和Documenting Software Architectures (SEI, 2010)。
使用模式名称列表,您应该能够找到大量的网页(我已将其标记为社区Wiki,以便我们可以添加这些链接)。这些书也很有用,因为它们可以让您更深入地了解如何使用这些模式。
阅读这些书:
- Martin Fowler:企业应用程序架构模式
- Gregor Hohpe,Bobby Woolf:企业集成模式:设计,构建和部署消息传递解决方案
对于建筑模式,请阅读Pattern-Oriented Software Architecture Volume 1: A System of Patterns。讨论的模式是:
- 图层
- 管道和过滤器
- 黑板
- 经纪人
- 模型 - 视图 - 控制器(MVC)
- 演示 - 抽象 - 控制(分层MVC)
- 微内核
- 反射
对你的问题不太确定!你的一个标签是设计模式所以我会这样说:如果你没有阅读设计模式书,那么你需要先阅读设计模式书。 Head First Design Patterns很好。当您了解设计模式时,可以理解架构设计模式。
另外,请查看patterns & practices组的Microsoft Application Architecture Guide。请务必阅读第2版。
如需软拷贝,请访问:http://msdn.microsoft.com/en-us/library/dd673617.aspx
以上是关于软件架构设计模式的主要内容,如果未能解决你的问题,请参考以下文章