1.3 架构的模式

架构的模式

有的时候,为了解决某些特殊的问题,对架构元素进行新的组合。在后来时间的长河中,人们发现有些架构是非常有用的,并且可以被应用于多个领域,于是这些架构就被记录和传播。这样的架构就被称架构模式,架构模式会对系统面临的某些问题提供一系列的解决策略。

一个架构模式刻画了元素的类型和这些元素在实际解决问题时的交互形式,可以根据所使用架构元素的类型对模式进行定义。

  • 常用的模块类型的模式
    • 层模式(Layered pattern)
      • 在层模式中,软件元素之间的联系是严格单向的。 层是一系列具有依赖关系的功能的集合。在严格的层结构中,一个层只能调用处于它严格下方的层所提供的服务。在实际应用中,使用这种架构可以降低结构间的依赖。层通常是抽象的,即将详细的实现隐藏在层内,对外只提供服务,这样有利于可移植性。
  • 常用的组件连接件模式(component-and-connector)
    • 共享数据(仓库)模式(shared-data or repository pattern)
      • 在这个模式中,创建组件和连接件用于访问持续存在的数据,数据库通常作为仓库存在,而连接件是管理数据库中数据的协议,如SQL。
    • CS模式(client-server pattern)
      • 在这个模式中,组件是client和server,连接件在系统工作时,client和sever间使用的共同协议和传递的数据。
  • 常用的分配模式
    • 多级模式(Multi-tier pattern)
      • 这个模式描述了如何将一个系统中的组件分配到不同的硬件和软件的子系统中,并使用连接介质将它们连接,这个结构明确定义了通用的部署(软件-硬件间的分配)结构。
    • 解决方案支援中心和平台(Competence center and platform)
      • 这个模式明确定义了开发一个软件系统的工作分配结构。从解决方案支援中心的角度看,不同的站点的工作分配按照该站点的能力和专家领域决定,比如用户界面的设计工作就会分配给那些具有可用性工程专家的站点。从平台的角度看,某一个站点被分配了开发软件产品线上的一个可重用核心组件的任务,其余的站点就通过调用这些可重用核心组件来开发应用。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,933评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,315评论 25 708
  • 最近再看阮一峰的一篇博客提到了一本书《Software Architecture Patterns》(PDF),写...
    卓_然阅读 7,872评论 0 22
  • 我一直在想,父母与我之间到底是一种怎样的羁绊。也许曾经在某个夜深人静的时刻,我从梦中醒来,注视着漆黑的窗户,猛然发...
    英语学了没阅读 253评论 8 2
  • 是有
    吊炸天pro阅读 185评论 0 1