V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lml12377
V2EX  ›  问与答

Phalcon 为什么每个组件都要实现一次 InjectionAwareInterface ?

  •  
  •   lml12377 · 2016-08-16 10:19:08 +08:00 · 1109 次点击
    这是一个创建于 2825 天前的主题,其中的信息可能已经有所发展或是发生改变。

    看了下源码, InjectionAwareInterface 里面主要是为了设置和获得容器句柄: setDI()/getDI()

    翻了下 Request/Response ,发现都是自己实现了 InjectionAwareInterface ,这样每个 Service 都可以自己拿到 $di 句柄,自己去拿之前注册进去的依赖。

    想问下,为何不弄个基类,比如 Component ,把 setDI()/getDI() 写到基类里面,或者直接用 construct 代替 set ,看到 Application 基类里面是这么搞的,那为啥还要 interface 那种实现?

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1019 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 22:42 · PVG 06:42 · LAX 15:42 · JFK 18:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.