c# - 什么时候去静态类?

标签 c# .net

每当我编写解决方案时,我倾向于使用大量静态类或根本不使用静态类。例如,在最近的一个项目中,我不得不通过多个环发送一个带有一些字符串/ bool /日期时间数据的类,唯一不是静态的就是这个数据保存类。其他所有内容(3 个具有不同处理职责的相当大的类)都是静态的。

我想我在这里要求的是关于何时(以及为什么)我应该避免对这些“处理 X,输出 Y”情况使用静态类的一些输入。只要它们有效,就可以一直使用它们吗?还是我在可伸缩性、插件支持等方面搬起石头砸自己的脚?

我希望这是一个可以在这里问的问题。我不是要争论静态类是否“更好”——只是输入我应该避免使用它们的时间。

最佳答案

我写的大部分代码:

  • 使用依赖注入(inject)/IoC
  • 并且需要可模拟/可测试

所以我几乎所有的事情都使用对象。

我仍然会在以下方面使用静力学:

  • 扩展方法
  • 常量
  • Helper/Utility 方法(预扩展方法)
  • 运算符方法

关于c# - 什么时候去静态类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4667807/

相关文章:

c# - 一个正则表达式匹配,其中一个词出现在一行中,而没有另一个词出现

c# - 跨多个项目的 ASP.NET 用户身份验证

c# - 多种类型的 Automapper 自定义值解析器重用

c# - try/catch 与 AppDomain.UnhandledException 记录应用程序并使应用程序崩溃

c# - 如何在 WPF 应用程序中动态导入 3D 模型

c# - Entity Framework 代码优先 : NULL values inserted in database

c# - 使用 C# 的 C++ 项目

.net - 将 app.config 与互操作控件结合使用

c# - 如何查找正在使用的 C# 和 .NET/Mono 版本?

c# - 我可以依赖按注册顺序调用的事件处理程序吗?