2019年8月14日

设计模式(13):结构型模式(七) 代理模式(Proxy)

摘要: 一、动机(Motivate) 在面向对象系统中,有些对象由于某种原因(比如对象创建的开销很大,或者某些操作需要安全控制,或者需要进程外的访问等),直接访问会给使用者、或者系统结构带来很多麻烦。如何在不失去透明操作对象的同时来管理/控制这些对象特有的复杂性?增加一层间接层是软件开发中常见的解决方式。 阅读全文

posted @ 2019-08-14 17:30 springsnow 阅读(358) 评论(0) 推荐(0) 编辑

设计模式(12):结构型模式(六) 享元模式(Flyweight)

摘要: 一、动机(Motivate) 在软件系统中,采用纯粹对象方案的问题在于大量细粒度的对象会很快充斥在系统中,从而带来很高的运行时代价——主要指内存需求方面的代价。如何在避免大量细粒度对象问题的同时,让外部客户程序仍然能够透明地使用面向对象的方式来进行操作? 二、意图(Intent) 运用共享技术有效地 阅读全文

posted @ 2019-08-14 16:46 springsnow 阅读(413) 评论(0) 推荐(0) 编辑

设计模式(11):结构型模式(五) 外观模式(Facade)

摘要: 一、动机(Motivate) 在软件系统开发的过程中,当组件的客户(即外部接口,或客户程序)和组件中各种复杂的子系统有了过多的耦合,随着外部客户程序和各子系统的演化,这种过多的耦合面临很多变化的挑战。如何简化外部客户程序和系统间的交互接口?如何将外部客户程序的演化和内部子系统的变化之间的依赖相互解耦 阅读全文

posted @ 2019-08-14 14:53 springsnow 阅读(828) 评论(0) 推荐(0) 编辑

导航