- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件的架构与模式之经典架构模式简介
软件的架构与模式之经典架构模式简介
2005-06-07 14:42作者:阎宏出处:天极网责任编辑:方舟
根据 HYPERLINK /key/4747/159747.html \t _blank Linda Rising的《Pattern Almanac》一书,已知的架构模式有七十多种。这是一个只多不少的统计,其中包括了很多通常认为是设计模式的模式,比如Bridge,Facade,Interpreter,Mediator等模式通常认为是设计模式,但是在许多情况下,也可以作为架构模式出现,因此也常常被当作架构模式。 Layers架构模式 在 HYPERLINK /key/4340/174340.html \t _blank 收集到用户对软件的要求之后,架构设计就开始了。架构设计一个主要的目的,就是把系统划分成为很多板块。划分的方式通常有两种,一种是横向的划分,一种是纵向划分。 横向划分将系统按照商业目的划分。比如一个 HYPERLINK /key/1561/136561.html \t _blank 书店的管理系统可以划分成为进货、销售、 HYPERLINK /key/633/165633.html \t _blank 库存管理、员工管理等等。 纵向划分则不同,它按照 HYPERLINK /key/4805/289805.html \t _blank 抽象层次的高低,将系统划分成层,或叫Layer。比如一个公司的内网管理系统通常可以划分成为下面的几个Layer: 一、网页,也就是用户界面,负责显示数据、接受用户输入; 二、领域层,包括JavaBean或者COM对象、 HYPERLINK /key/4672/134672.html \t _blank B2B服务等,封装了必要的商业 HYPERLINK /key/3446/223446.html \t _blank 逻辑,负责根据商业逻辑决定显示什么数据、以及如何根据用户输入的数据进行计算; 三、数据库,负责存储数据,按照查询要求提供所存储的数据。 四、操作系统层,比如Windows NT或者Solaris等 五、硬件层,比如SUN E450服务器等 有人把这种Layer叫做Tier,但是Tier多带有 HYPERLINK /key/365/180365.html \t _blank 物理含义,不同??Tier往往位于不同的计算机上,由网络连接起来,而Layer是纯粹逻辑的概念,与物理划分无关。 Layers架构模式的好处是: 第一、任何一层的变化都可以很好地局限于这一层,而不会影响到其他各层。 第二、更容易容纳新的技术和变化。Layers架构模式容许任何一层变更所使用的技术 Fa?ade架构模式 外部与一个子系统的通讯必须通过一个统一的门面(Facade)对象进行,这就是Facade模式。 现代的软件系统都是比较复杂的,设计模式的任务就是协助设计师处理复杂系统的设计。 设计师处理复杂系统的一个常见方法便是将其分而治之,把一个系统划分为几个较小的子系统。但是这样做了以后,设计师往往仍然会发现一个子系统内仍然有太多的类型要处理。而使用一个子系统的使用端往往只关注一些特定的功能,却要同时与子系统内部的许多对象打交道后才能达到目的,请见下面的对象图。
图4、Facade架构模式的结构图。 这就是一种不便,它使得系统的逻辑变得不必要的复杂,维护成本提高,复用率降低。 用一个范例说明,中国 HYPERLINK /key/3161/168161.html \t _blank 大陆的 HYPERLINK /key/3390/138390.html \t _blank 医院便是一个子系统,按照部门职能,这个系统可以划分为挂号、门诊、划价、化验、收银、取药等。看病的病人要与这些部门打交道,就如同一个子系统的使用端与一个子系统的各个类型打交道一样,不是一件容易的事情。 首先病人必须先挂号,然后门诊。如果医生要求化验,病人必须首先划价,然后缴款,才能到化验部门做化验。化验后,再回到门诊室,请见下面的对象图。
图5、描述病人在医院里的体验。图中的方框代表医院。 解决这种不便的方法便是引进Facade模式。仍然通过医院的范例说明,可以设置一个接待员的位置,由接待员负责代为挂号、划价、缴费、取药等。这个接待员就是Facade模式的体现,病人只接触接待员,由接待员负责与医院的各个部门打交道,请见下面的对象图。
图6、描述经过Facade模式的 HYPERLINK /key/3989/148989.html
您可能关注的文档
- 超高层建筑施工过程带图片.doc
- 路基加宽施工改造工程1.doc
- 路基工程施工方案醉心客.doc
- 路基工程总作业指导书洛湛铁路.doc
- 路基挖除换填方案肖王改B版.doc
- 路基试验段93区施工总结报告.doc
- 路基课题2路基沉降动态变形监测技术研究.doc
- 路基施工方案全线.doc
- 路基土方工程施工技术安全3级交底.doc
- 路基填筑试验段施工方案片石盲沟.doc
- 2025年成都市玩偶生产荧光涂鸦互动玩偶开发可行性研究报告.docx
- 2025年成都市海绵生产用于体育馆室外运动场地透水改造可行性研究报告.docx
- 2025年天津市体操鞋企业团建运动应用报告.docx
- 2025年上海市溶洞极限运动(速降)场地开发可行性研究报告.docx
- 2025年上海市涵洞工程施工技术应用可行性研究报告.docx
- 2025年上海市体育场馆设施扎带安全防护可行性研究报告.docx
- 2025年上海市牦牛育肥产业园区建设可行性研究报告.docx
- 2025年旅拍宠物陪伴拍摄项目可行性研究报告.docx
- 2025年上海市进口食品节庆主题快闪店可行性研究报告.docx
- 2025年上海市洗选厂尾矿综合利用产业化可行性研究报告.docx
最近下载
- GB15763.1-2009 建筑用安全玻璃 第1部分:防火玻璃 (2).pdf VIP
- DB5101T 217—2025成都市城市绿化养护技术规程.pdf
- 漫画解读--非煤露天矿山重大事故隐患判定标准.pdf
- 伤口、造口、失禁性皮炎理论考试试题与参考答案.docx VIP
- LNG气化站安装工程施工的方案.doc VIP
- 2023年8月26日全国事业单位联考A类《职业能力倾向测验》真题.pdf VIP
- 跨境电子商务英语 课件 柯可 Unit 1 Overview of Cross-Border E-Commerce、 Unit 2 Main Cross-Border E-Commerce Platforms.pptx
- 2024年辅警招聘《公安工作基本知识》培训考试题库 (附答案).docx VIP
- 低氧对肝脏脂质代谢影响研究.docx VIP
- GB T 34986-2017 产品加速试验方法.doc VIP
文档评论(0)