设计模式
观察者模式(Observer Pattern)也叫做发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式。这个模式的一个最重要的作用就是解耦。也就是将被观察者和观察者进行解耦,使得他们之间的依赖性更小,甚至做到毫无依赖。 观察者模式的定义:…
在新建对象时,若需要对大量可选参数进行赋值,最常见的做法是JavaBeans模式,即调用一个无参构造方法创建对象,然后调用setter方法来设置每个必要的参数,以及每个相关的可选参数。代码示例如下: 这种模式需要的代码语句繁琐,而且这种做法阻止了把类做成不可变的可能。更加简洁的一…
Master-Worker模式是常用的并行模式之一。它的核心思想是,系统由两类进程协作工作:Master进程和Worker进程。Master进程负责接收和分配任务,Worker进程负责处理子任务。当各个Worker进程将子任务处理完成后,将结果返回给Master进程,由Maste…
1.Future模式 Future模式和多线程技术密切相关,可以说是利用多线程技术优化程序的一个实例。 在程序设计中,当某一段程序提交了一个请求,期望得到一个答复。但非常不幸的是,服务程序对这个请求的处理可能比较慢,比如,这个请求可能是通过互联网、HTTP或者Web Servic…
代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。 代理模式是23种常用的面向对象软件的设计模式之一,具体又分为静态代理、动态代理。 如何理解代理模式? 思考抽象问题最好的办法就是具体化! 比如我们需要为一个业务方法在执行前后记录日志,为了达到解耦的目的,我们可以再新…