2011-12-28 5 views
4

나는 주어진 시간에 10,000 이상의 코드가있는 클라이언트에 의해 호출 될 WCF 웹 서비스를 디자인하고 있습니다. 서비스가 호출되면 서비스는 "Object1"클래스를 만듭니다.클래스의 WCF 정적 메서드

public List<string> AnswerClient() { 
    Object1 _hello = new Object1(); 
    return _hello.AnswerClient(); 
} 

Object1 클래스는 그 안에 다른 Object1 클래스를 만들어야하기 때문에. 다른 하위 집합 Object1 클래스를 만들어야합니다. 나는 내가 처음에() 특정 오브젝트 1을 만들 필요가 있다고 생각하지 않기 때문에

Object1.AnswerClient() 

같은 다른 오브젝트 1의 방법을 만들기 위해 오브젝트 1 클래스의 정적 메소드를 사용하는 생각을했다. 여러 클라이언트가 서비스를 호출하면 정적이기 때문에이 Object1.AnswerClient()가 코드를 엉망이됩니까? 통계는 클래스에 따라 다르기 때문에 모든 클라이언트가 영향을받는 것 같습니다.

이 클래스를 어떻게 디자인해야합니까? 클라이언트는 서비스를 호출하고 서비스는 클라이언트 데이터를 기반으로 객체를 만듭니다. 그 안에있는 객체는 비슷한 객체 20 개를 만듭니다 (데이터에 따라 사용자 데이터를 나눕니다).

도움과 통찰력이 도움이 될 것입니다. 이 말을 어떻게 디자인해야합니까?

감사합니다.

답변

4

AnswerClient 방법 자체가 생성되는 상태 이외의 다른 상태를 필요로하지 않는 경우 정적으로 만드는 데 문제가 없어야합니다.

이렇게 말하면 나는 이것에 대해 다르게 생각할 것입니다. AnswerClient은 실제로 Object1 (더 나은 이름을 얻을 수있는 기능)의 무언가입니까? 또는 범용 유틸리티 방법입니까? 논리적으로 특정 "Object1"인스턴스에 묶여 있다면 인스턴스 메서드로 남겨 두겠다. 일반적인 유틸리티보다 더 많은 "Object1"이 나타내는 것과 직접적인 관련이없는 경우에는 정적으로 만듭니다.

관련 문제