
设计模式
Mr_Faker
这个作者很懒,什么都没留下…
展开
-
设计模式之行为型(一)
一、观察者模式 观察者模式的应用场景非常广泛,小到代码层面的解耦,大到架构层面的系统解耦,再或者一些产品的设计思路,都有这种模式的影子,比如,邮件订阅、RSS Feeds,本质上都是观察者模式。不同的应用场景和需求下,这个模式也有截然不同的实现方式,有同步阻塞的实现方式,也有异步非阻塞的实现方式;有进程内的实现方式,也有跨进程的实现方式。 public interface RegObserver{ void handleRegSuccess(long userId); } public cla原创 2020-11-30 08:54:32 · 140 阅读 · 0 评论 -
设计模式之结构型
一、代理模式 在不改变原始类(或叫被代理类)的情况下,通过引入代理类来给原始类附加功能。一般情况下,我们让代理类和原始类实现同样的接口。但是,如果原始类并没有定义接口,并且原始类代码并不是我们开发维护的。在这种情况下,我们可以通过让代理类继承原始类的方法来实现代理模式。 静态代理需要针对每个类都创建一个代理类,并且每个代理类中的代码都有点像模板式的“重复”代码,增加了维护成本和开发成本。对于静态代理存在的问题,我们可以通过动态代理来解决。我们不事先为每个原始类编写代理类,而是在运行的时候动态地创建原原创 2020-11-29 10:06:35 · 139 阅读 · 0 评论 -
设计模式之创建型
一、单例模式 单例设计模式(Singleton Design Pattern)理解起来非常简单。一个类只允许创建一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫作单例设计模式,简称单例模式。 实现方式: 饿汉模式 public class IdGenerator{ private AtomicLong id = new AtomicLong(0);privatestaticfinal IdGenerator instance = new IdGenerator();private原创 2020-11-27 23:40:51 · 146 阅读 · 0 评论 -
面向对象设计基本原则
六大基本原则 面向设计主要分为六大基本原则: 单一职责原则——SRP 开闭原则——OCP 里式替换原则——LSP 依赖倒置原则——DIP 接口隔离原则——ISP 迪米特原则——LOD 1、单一职责原则 一职责原则的英文是 Single Responsibility Principle,缩写为 SRP。这个原则的英文描述是这样的:A class or module should have a single reponsibility。如果我们把它翻译成中文,那就是:一个类或者模块只负责完成一个职责原创 2020-11-22 13:35:30 · 284 阅读 · 1 评论 -
23种设计模式总结
1.单例模式(Singleton Pattern)定义:Ensure a class has only one instance, and provide a global point of access to it.(确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。)通用代码:(是线程安全的)public class Singleton { private stati...转载 2018-07-09 09:48:22 · 129 阅读 · 0 评论