若框架同时使用了 DI 和中间件管线(Middleware Pipeline)我们还需要 AOP 么?
若框架同时使用了 DI 和中间件管线(Middleware Pipeline)我们还需要 AOP 么?
DI 可以解决面向对象中散落在各处的零散代码的实现问题。这类似于 Mixin 的概念吧?
用中间件管线,可以独立各个功能比如日志功能的实现,挂载不同的 handler 就好了嘛。这也类似于 Callback 的实现吧?
DI 可以解决面向对象中散落在各处的零散代码的实现问题。这类似于 Mixin 的概念吧?
用中间件管线,可以独立各个功能比如日志功能的实现,挂载不同的 handler 就好了嘛。这也类似于 Callback 的实现吧?
问题:
AOP 是不是更倾向于在运行时解决问题?若是,会否造成低效?之前 Yii2 框架支持了一个非常灵活而强大的 behavior 语法。后因种种原因造成社区倾向于弃用此结构。
AOP 是否破坏封装?
DI 或/和 Middleware Pipeline 是否能够替代 AOP?
AOP 所解决的特定问题究竟是什么,从而导致他需要修改中间语言。
关联问题知乎
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
DI和AOP是两个概念吧,AOP一个简单的应用就是数据库事务实现,你不用手动在每一个需要数据库事务的方法里面写事务提交回滚的代码,通过AOP就可以简单实现,其它的诸如方法审计,都可以用这个来实现。效率上是会影响,但是方便易用性足够弥补性能上的缺失了。