たとえば、履歴書を解析するための 2 つのクラスがあり、1 つは Excel を解析し、もう 1 つは HTML を解析します。私の同僚が好んで行うのは、これら 2 つのクラスに同じ名前を付けて、以下に示すように異なる名前空間に配置することです。
namespace XX.ResumeParsers.Excel
class ResumeParser{}
namespace XX.ResumeParsers.Html
class ResumeParser{}
クラスの名前を変更し、それらを 1 つの名前空間に配置することをお勧めします (ただし、必要に応じて別のファイルに配置します)。
//in Excel folder under ResumeParsers folder
namespace XX.ResumeParsers
class ExcelResumeParser{}
//in Html folder under ResumeParsers folder
namespace XX.ResumeParsers
class HtmlResumeParser{}
したがって、階層はまだフォルダーに存在しますが、名前空間は同じです (フォルダー階層と正確に一致しません)。それでよろしいですか?
私が正しければ、同僚を説得する方法はありますか? または、ソリューションに重大な欠点はありますか?
ありがとう。