随笔分类 - 设计模式
摘要:代理模式通过代理对象来访问真实对象,相当于对真实对象进行了封装操作。 Subject:真实对象和代理对象的共同接口; Proxy:代理对象,实现了与真实对象相同的接口,所以在任何时刻都能够代理真实对象,并且代理对象内部包含了真实对象的引用,所以它可以操作真实对象,同时也可以附加其他的操作,相当于对真
阅读全文
摘要:单例模式可以确保系统中某个类只有一个实例,该类自行实例化并向整个系统提供这个实例的公共访问点,除了该公共访问点,不能通过其他途径访问该实例。 单例模式的优点在于: 系统中只存在一个共用的实例对象,无需频繁创建和销毁对象,节约了系统资源,提高系统的性能 可以严格控制客户怎么样以及何时访问单例对象。 在
阅读全文
摘要:适配器模式通过使用适配器类(Adapter)将被适配类包装以兼容目标接口,将目标接口和被适配类解耦。适配器模式符合“开闭原则”,可以在不修改原代码的基础上增加新的适配器类;所以,适配器模式比较适合以下场景: 系统需要使用新的目标接口,而这些接口不符合现有系统的类所期望的接口。 适配器模式的实现方式
阅读全文
摘要:职责链可以将请求的处理者组织成一条链,并将请求沿着链传递,如果某个处理者能够处理请求则处理,否则将该请求交由上级处理。 所以责任链模式有以下几个优点: 降低耦合度,将请求的发送者和接收者解耦。反映在代码上就是不需要在类中写很多丑陋的 if….else 语句,如果用了职责链,相当于我们面对一个黑箱,只
阅读全文
摘要:在开发中经常遇到这种情况,实现某个功能有多种算法策略,我们可以根据不同环境或者条件选择不同的算法策略来完成该功能,比如查找、排序等。 一种常用方式是硬编码在一个类中,如需要提供多种查找算法,可以将这些算法写到一个类中,在该类中提供多个方法,每一个方法对应一个具体的查找算法;当然也可以将这些查找算法封
阅读全文

浙公网安备 33010602011771号