Я создаю класс принтера, который должен будет печатать как строки HTML, так и HTML-документы. Так что в принципе он может получить:Отправка HTML-аргументов и аргументов пути файла?
Printer.Print("<b>Hello world</b>");
И
Printer.Print(@"C:\hello.html");
Таким образом, в разработке моего класса определения метода печати я решаю между следующим:
public static void Print(string inputString, string mode){
if(mode=="htmlString"){//Print the string itself}
else if(mode=="htmlFile"){//Print the document in the filepath}
}
Или
public static void Print(string inputString){
if(file.Exists(inputString)){//Print the document in the filepath}
else{//Print the string itself}
}
В целом, что равно t он лучше тренируется? Первый вариант требует другого аргумента, который невелик, но если мы используем второй вариант, если мы намерены фактически распечатать файл, но будем использовать неправильное имя файла, оно напечатает неверное.
Фасады зданий для пользователя могут выглядеть умными, однако это может стать очень запутанным, чтобы построить методы, которые делают несколько различных вещей, в то время как их название не скажет ничего о том, что они делают точно. В этом случае существует огромная разница (и влияние) при печати простой строки и открытии и закрытии файла. Для начала, как насчет HTML, который содержит только обычный текст имени файла? В вашем примере я не могу напечатать простую filePath как строку. –
Хорошо, я не думал об этом с этой точки зрения. – sooprise
Я бы рекомендовал ответ г-на Разочарования, это понятно для чтения, и нет никакой путаницы в том, как что-то должно вести себя. –