300页干货了解 高级系统架构设计.pptVIP

  1. 1、本文档共268页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 通信机制设计 Socket FTP 框架本身 Jar包 WebService 数据库共享 双方互访问数据库 访问URL(Post / Get) RMI 中间件、网关 磁盘文件共享 JMS MQ Remoting Flash XMLSocket(XMLSocke) COM/DCOM Windows消息 管道、邮槽 Windows(有名)事件 共享内存 FileMapping(高效) 第十一单元:部分软件应用类型和架构风格鉴赏 * 基于树形结构的分布式系统 基于总控端的分布式系统 基于P2P的分布式系统 基于数据网关交互的BS系统 基于集中控制的BS系统 复杂消息控制的桌面运用系统 松散耦合的桌面系统 组件化的桌面系统 基于脚本解释器的桌面系统 * * 第十二单元:架构设计步骤总结及实践 * 软件设计的步骤: 一、静态设计。 二、模块间的通信及耦合设计。 三、动态设计。 四、模块调整。 * 一、静态设计 1、按层+高内聚低耦合的原则进行模块划分 1)高内聚低耦合原则(GRASP:高内聚低耦合) 2)按功能分解 3)按业务进行分解 4)以数据转换为中心分解 5)实际运用中的折中 2、划分层次 (架构风格) 1)将模块划入对应的层 2)分层与分区 3)逻辑模块与实体组件的对应关系 * 一、静态设计(续) 3、为模块进行职责分配 1)信息专家+控制者 2)隔离关注面(GRASP:保护变量、间接模式) 3)低耦合原则 4)适当采用设计模式 4、用设计模式优化核心结构 1)用策略/桥接模式作为中心骨架(多态模式) 2)用工厂/抽象工厂模式进行组装。(创建者模式) 3)用命令模式处理事务 * 一、静态设计(续) 5、模块结构的常用形式 1) 容器模块 + 控制者 + 功能模块 + 临时构建的小类。(纯虚构模式) a) 单例模式 b) 命令模式 2) 核心模块的接口设计 a) 外观模式 b) 适配器模式 c) 代理模式 d) 调停者模式 3) 变换型模块结构 4) 事务型模块结构 * 二、模块间的通信及耦合设计 1、组件式程序设计 通常一个领域的专用资产要应用到不相关的领域是比较困难的,组件式开发的首要工作是领域工程,在这个领域内提取可被复用的系统对象,创建可复用资产,开发复用组件。 面向对象技术的特点是通过对象之间的职责分工和高度协作来完成任务。这样的好 处是代码量较少,系统布局合理,重用程度高,但是当对象的个数大量增加的时 候,对象之间的高度耦合的关系将会使得系统变得复杂,难以理解. 2、通讯机制 观察者模式 本地SDK 轮询 * 二、模块间的通信及耦合设计(续) 3、解耦 1)针对接口编程;(面向对象原则:接口单一原则) 2)增加间接模块;(间接模式) 3)依赖注入 4、设计数据层 1)数据结构选用的设计 2)数据访问层的设计 * 三、动态设计 1、抽象与统一不同的因素 1)根据业务寻找关键因素 2)向复杂的情况靠齐 2、常用的流程抽象手段 1)依赖注入 / 控制反转 / 依赖倒置(面向对象原则) 2)表格法 3)配置文件 3、逻辑控制: 1)控制者模式 2)信息专家模式 4、消息通知机制 1)MVC模式 2)观察者模式 3)责任链模式 4)中介者模式 * 四、模块调整 1、调整模块等级 1) 适当封装: 2) 把属性提升为类 3) 将类降为属性 4) 将类提升为组件 2、类细化 1) 李氏替换原则 2) 避免脆弱基类等 3、用设计模式优化,在主体框架上进行调整 1)访问者模式 2)装饰模式 * 四、模块调整(续) 4、编码时构建适当的动态临时类 1) 命令模式 2) 事务处理类型 3) 纯虚构 5、效率的优化 1) 效率与结构的折中 2) 优化效率的3步骤 * * * * * * * * * * * * * * * * * * * * VISITOR模式的结构 * VISITOR+组合模式 VISTTOR模式的一个非常常见的应用是,遍历大量的数据结构并产生报表。这使得数据结构对象中不含有任何产生报表的代码。如果想增加新报表,只需增加新的访问者,而不需要更改数据结构中的代码。这意味着报表可以被放置在不同的组件中,并且仅被那些需要它们的客户单独使用。 * 例:报表生成器 一个表示材料单的简单数据结构。从该数据结构可以生成无数的报表。 两个可以统计的量:成本;数量 例如可以生成一张一个组合件总成本的报表,或者生成一张列出了一个组合件中所有零件的报表。 * VlSITOR模式的解决方法 * 其它模式 问题: 考虑前面的Modem层次结构。假设有一个具有很

文档评论(0)

ma982890 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档