在设计我的数据访问层时,我想让我的所有类都静态化,这样就不需要对象实例化,并且可以使用类名访问该类的所有成员。
这是一个好方法吗?如果是,那么为什么我们根本需要一个实例类类型。它是否会对 n 个客户端想要访问我的 DAL 的应用程序的性能产生影响,然后可能会因为根本没有创建对象而导致管理请求出现问题?
我知道静态类不能实例化,应该用于日志记录、实用程序方法等,因为所有对象都需要以类似的方式运行,假设所有 DAL 类的行为是否有效/安全相同的方式(具有相同的功能),因此使它们成为静态的而不是实例化它。
请指教。
最佳答案
类型要么在概念上表示与实例相关联的操作,要么不。这里不考虑性能。
如果您的方法没有状态,或者它们的状态被设计为在整个应用程序的所有调用之间共享,那么该方法应该是静态的。如果需要在成员之间共享单独的状态但不与整个应用程序共享,那么它们需要是非静态的。该类型通常会根据它在概念上表示的内容需要其中之一。这不是实际的选择。
关于c# - 静态类和类设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25878297/