我有这个 C# 类结构,我想重构它以使用最佳编码标准(使用接口/抽象类),因此它可以更易于维护和重用。现在的代码并不糟糕,但并不理想。
我有一系列 TableItemGroup 类:AccountTableItemGroup、PendingVoteTableItemGroup 和 RequestingVoteTableItemGroup。每个 TableItemGrup 都包含一个字符串 SectionName 和一个与其对应的 TableItem 的列表 ...例如:
public class AccountTableItemGroup {
public string SectionName { get; set; }
public List<AccountTableItem> Items
{
get { return this._items; }
set { this._items = value; }
}
public List<AccountTableItem> _items = new List<AccountTableItem>();
public AccountTableItemGroup()
{
}
}
将来会有更多的 TableItemGroups,如果除了 List 部分之外它们都相同,我不想每次都复制代码并创建一个新组并进行微小的更改。我知道一定有更好的方法。我想继续使用 List<> 泛型,所以我以后不必再转换任何东西了。
另一部分是 TableItems。我有 AccountTableItem、PendingVoteTableItem 和 RequestingVoteTableItem。TableItem 彼此不同,但它们各自共享三个公共字符串——TitleLabel、DetailLabel 和 ImageName。但在那之后,每个 TableItem 可能有也可能没有额外的属性或方法......因此:
public class AccountTableItem
{
public string TitleLabel { get; set; }
public string DetailLabel { get; set; }
public string ImageName { get; set; }
public bool SwitchSetting { get; set; }
public AccountTableItem()
{
}
}
所以我对你们所有人的问题是,我如何重新定义我的类结构以允许尽可能多地重用代码并使用最佳编码标准?
我想有一个抽象的 TableItem 类或使用 TableItemGroup 的接口?我知道使用接口或抽象类最适合编码标准,但我不明白它会如何减少我将拥有的代码量?
非常感谢您的帮助。