I가 여러 클래스 모든 인터페이스 구현 : 그 예를 몇 가지 상황을 기반으로 만든다른 클래스를 생성하는 클래스의 이름을 지정하는 방법은 무엇입니까?
interface ISample
{
}
class A:ISample
{
}
class B:ISample
{
}
class C:ISample
{
}
및 다른 클래스 :
class CreateISample
{
ISample Create(string situation)
{
switch(situation)
{
case "create A":
return new A();
case "Create B":
return new B();
case "Create C":
return new C();
}
}
}
이 클래스의 가장 좋은 이름은 무엇입니까?
같은 그때가, ISample이 좋지 않다 만들기 :
두 이름의 일부로 만들기가CreateISample.Create("Create A");
. 또한 CreateISample은 (예를 들어 모든 인스턴스와 관련된 상수 값을 보유하거나 생성 된 인스턴스 목록을 보유하는 등) 다른 작업을 수행 할 수 있습니다. 그렇다면 CreateISample은 좋은 이름이 아닙니다.
이에 대한 표준이 있습니까? 나는 디자인 패턴에 관한 책을 읽었으며이 팩토리 패턴에 적합한 이름을 제안했음을 기억합니다.
SampleFactory로 이름을 지정하고 http://codereview.stackexchange.com 또는 http://programmers.stackexchange.com으로 이동하는 질문은 무엇입니까? –
나는 그것을 Bob (tgif :)라고 부른다. –
'GenerateISample'은 어떨까? – Sean