c# - 我是否应该密封所有我知道不应该用作基类的类?

标签 c# coding-style class sealed

我是否应该密封所有我知道不应该用作基类的类,即使没有明显的性能或安全问题,还是这只是增加了麻烦?

最佳答案

一个可扩展的类实现了它可以被扩展的特性——这个特性与该类的任何其他特性一样,应该被视为一个特性,与方法没有区别。应仔细考虑所有功能,以确保它们满足使用该功能的客户的目标。需要设计、实现、审查安全问题、调试、记录和维护功能。

所有这些都需要付出努力,而努力通常需要付出金钱。你花谁的钱?他们可能对您是否应该执行此功能有意见。

基本上,您有三个选择:

1) 花钱做这个功能,这样你就有信心它是正确的、健壮的、安全的并且满足用户需求。

2) 不执行上述任何操作,但无论如何都发布该功能,并希望发布具有未知安全风险的未经设计、快速实现、未经测试、未经记录、未经维护的功能不会伤害您、您的雇主或您的客户。

3) 密封类。如果您发现 (1) 是正确的选择,请稍后打开它。

我说 (3) 物有所值。我总是密封我编写的每个不是为可扩展性而设计的类。

关于c# - 我是否应该密封所有我知道不应该用作基类的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164170/

相关文章:

php - 允许 fckeditor 2 中的样式属性与 php 集成

silverlight - WP7 视觉状态问题

c++类 friend

c# - dataGridView 上下文菜单功能

C# 林奇 : Get items with max price

php - PSR-2编码标准: why no closing PHP tag in files containing only PHP?

c++ - 后面加void违法吗?

c++ - 什么时候在堆和堆栈上有类成员?

c# - 具有计时器触发器和 Blob 触发器的连续 Web 作业

c# - .net 核心 ProtoBuf 上的序列化程序在哪里?