依赖注入和工厂模式之间有什么不同?
What is the difference between Dependency Injection and the Factory pattern?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: hard
分类: Design Principles, Design Patterns
标签: DI, Factory Pattern, Testing
参考答案摘要
答案 虽然两种模式都是将对象的创建从应用的逻辑中分离,但是依赖注入比工程模式更清晰。通过依赖注入,你的类就是 POJO,它只知道依赖而不关心它们怎么获取。使用工厂模式,你的类需要通过工厂来获取依赖。因此,使用 DI 会比使用工厂模式更容易测试。关于这个话题的更详细讨论请参见答案。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。