zoukankan      html  css  js  c++  java
  • PHP中应用Service Locator服务定位及单例模式

    单例模式将一个对象实例化后,放在静态变量中,供程序调用。

    服务定位(ServiceLocator)就是对象工场Factory,调用者对象直接调用Service Locator,与被调用对象减轻了依赖关系,这样如果被调用对象更换时,直接修改ServiceLocator的注册即可,不用修改程序中很多个地方的调用,从而减轻依赖关系。

    我在学习单例模式的思路时,有一个疑问总是围绕着自己,单例模式就是静态变量呗,为什么要叫单例模式,有什么好处?静态类+静态方法不是很好?

    当我学习了ServiceLocator后者明白,单例模式是一个对象放在静态变量中,这样可以减轻程序的耦合度,因为这个对象是很容易更换成另一个对象,而静态类直接调用就不行了。

    哪么ServiceLocator如何实现呢,下面代码举例说明。

    自己实现ServiceLocator 

    YII2框架中的ServiceLocator

    总结

  • 相关阅读:
    UML学习笔记<1>
    安装和配置jBPM4,并举个hello.w
    Myeclipse--jBPM4.3插件
    今天讲座的感悟--java
    程序员必看的书
    SSH的整合
    一款Timer倒计时器
    一款jq的计时器
    Code Complete-13/7/29
    java-Timer类使用方法
  • 原文地址:https://www.cnblogs.com/a-xu/p/4082829.html
Copyright © 2011-2022 走看看