0
A
回答
0
更好地使它成为一个静态类的工具类。
依赖是一些什么密切相关的特定类,但在你的情景我会说,你需要一个工具类。
0
我会说你不需要注射的复杂性,除非你帮助多种助手类,每个助手类以相同的方式做一个稍微不同的方法。我会说构图是合理的;你也可以将它作为一个实用工具或工具包的静态类,这可能会使你的代码更加明确。
2
你为什么选择Composition vs Inheritance的原因应该是众所周知的SOLID原则。然后,“赞成构成比继承”是他们的后果,国际海事组织。
IMO你有一个实用工具类,当
- 它是静态的(如SAURABH称);
- 任务与特定域无关,但与原始数据相关(例如用于反向列表的实用程序);
- 其功能无副作用;
- 其功能没有替代实现。
无论如何,随着C#扩展,现在很少创建一个实用程序类。
对于实用程序类,您不需要注入它(它是静态的和可测试的)。如果相反,你有组成,依赖倒置原则指出,你应该“依赖抽象,而不是结核”,所以你可以离开容器注入你的抽象。
相关问题
- 1. 帮助单元测试
- 2. 单元测试帮助
- 3. 如何单元测试UrlHelper自定义帮助程序方法
- 4. 单元测试方法ASP.NET帮助?
- 5. 帮助者的单元测试Ember-cli
- 6. 需要Grails单元测试帮助
- 7. 帮助单元测试级联计算
- 8. Java单元测试帮助循环
- 9. 单元测试新手帮助
- 10. 单元测试与AutoFixture的Html帮助
- 11. JS单元测试帮助业力/ Jasmine
- 12. DDD模式中的服务“帮助程序类”的单元测试约定
- 13. 帮助分类测试
- 14. Python类和单元测试
- 15. JUnit:仅使用静态方法测试帮助程序类
- 16. 单元测试Rails应用程序的控制器的帮助模块 - 如何?
- 17. AutoIT测试帮助
- 18. 单元测试类
- 19. 帮助程序,方法和类组织
- 20. Groovy的应用程序类和Java单元测试
- 21. Ember.JS集成测试问题与和然后单击帮助程序
- 22. 单元测试帮助。如何测试消息输出到控制台?
- 23. AngularJS:需要帮助单元测试承诺的工厂
- 24. 创建java.util.map.Entry实例来帮助单元测试
- 25. 我需要帮助单元测试MVC.Net站点JsonResults
- 26. 单元测试库需要的帮助/建议
- 27. 帮助在Silverlight中编写异步单元测试
- 28. 需要帮助编写单元测试需要HttpContext.Current.User的方法
- 29. IOS VIPER:协议如何帮助单元测试?
- 30. aws boto3客户端Stubber帮助存根单元测试
Utility和Helper的主要区别是什么? – Bill 2010-12-07 08:36:02
没有点比较,据我所知,但主要是工具类是静态类,你不需要在工具类中有子类 – TalentTuner 2010-12-07 08:39:00