擴展方法過多導致智能提示汙染,難以尋找原生方法。命名空間隔離有缺陷:單一命名空間過多仍汙染,過少則需頻繁 using 切換。
public static class StringExtension {
public static ChineseString AsChineseString(this string s)
=> new ChineseString(s);
public static ConvertableString AsConvertableString(this string s)
=> new ConvertableString(s);
public static RegexableString AsRegexableString(this string s)
=> new RegexableString(s);
}
s.AsChineseString().ToSBC()Equals/ToString 混雜,無擴展圖示建議高頻擴展直接掛在 string,低頻才分組。後續將改進智能提示體驗。