你能教我什么是可用的软件架构设计模式吗?
为了详细说明我的问题,我想通读不同的架构设计模式,并决定什么适合我的项目要求?
例如,有企业应用程序设计模式,企业集成设计模式,ESB 模式,SOA 模式等。
模式发生在许多层面。架构模式 (即架构风格) 通常是最大的,涵盖了系统的基本组织。设计模式是在几个协作对象的层面上。伯恩德对福勒和其他企业模式的建议是一个很好的建议。只要认识到这些模式往往比这些架构模式更具体:
分层(即虚拟机模式)
大泥球
管道和过滤器
批处理顺序
以模型为中心(共享数据)
发布订阅
客户端-服务器(和 N 层)
点对点
MapReduce
架构模式通常应用于系统的运行时结构,但也可以应用于其模块或硬件分配。一个常见的错误是,当分层模式真正应用于系统的模块 (即其编译时依赖关系) 时,认为它适用于运行时。当然,您可以在运行时镜像您的模块结构
这些模式在我的书Just Enough Software Architecture, Fairbanks (2010)中有详细的讨论,其他的书包括Garlan & Shaw (1996)、Taylor, Medvidovic, & Dashovy (2009)和Documenting Software Architectures (SEI, 2010)也涵盖了其中的大部分。
使用模式名称列表,您应该能够找到大量的网页(我已将其标记为社区 Wiki,以便我们可以添加这些链接)。这些书也很有帮助,因为它们使您对如何使用模式有了更多的了解。
读这些书:
Martin Folwler:企业应用程序体系结构的模式
Gregor Hohpe,Bobby Woolf:企业集成模式:设计、构建和部署消息传递解决方案
对于架构模式,请阅读Pattern-Oriented Software Architecture Volume 1: A System of Patterns。讨论的模式如下:
图层
管道和过滤器
黑板
经纪人
模型-视图-控制器 (MVC)
表示-抽象-控制 (分层 MVC)
微内核
Reflection
不太确定您的问题!您的一个标签是设计模式,所以我会这样说:如果您还没有阅读设计模式书,那么您需要先阅读设计模式书。Head First Design Patterns 很好。当您了解设计模式时,就可以理解体系结构设计模式。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(31条)