미안하지만 다른 정적 인터페이스에서는 사용하지 않는 제네릭에 대해 언급 할 수 있습니다.C의 정적 인터페이스 #
저는 정적 요소를 사용하는 싱글 톤을 피할 수는 있지만, 앱에 대한 빠르고 간단한 로거를 원했습니다. 나중에 다른 로깅 패키지로 변경할 수 있도록 인터페이스를 유지하고 싶습니다. 인터페이스가 나를 위해 (내가 틀릴 수도 있습니다) "외관"기능을 구현하는 방법입니다.
나는 뭔가를 내려다보고 있다는 느낌이 들었습니다. 올바른 방향으로 부드럽게 밀어 주면 대단히 감사하겠습니다. (조금 더 명확 해지기를 바랍니다)
public interface Ilogger
{
void Log(string data, out DateTime datetime, out string uid);
}
public class Logger : Ilogger
{
private static TraceSource AppTrace = new TraceSource("RD", SourceLevels.All);
static Logger()
{
AppTrace.Listeners.Clear();
AppTrace.Listeners.Add(new DelimitedListTraceListener("RD.log"));
}
static void Log(string data, out DateTime datetime, out string uid)
{
datetime = DateTime.Now;
uid = Guid.NewGuid().ToString();
AppTrace.TraceInformation(datetime + ";" + uid + ";" + data);
}
}
달성하려는 목표 또는 "정적 인터페이스"가 작동하는 위치가 명확하지 않습니다. 문제를 명확히하기 위해 질문을 편집하십시오. –
너희들은 방아쇠를 당긴다! 건배 –