요청/응답 클라이언트를 구현하려고합니다. 여기에 대한 기본 구현이 있습니다.요청 응답 설계 구현
Class Request
{
prepareRequest1();
prepareRequest2();
}
Class Response
{
processResponse1();
processResponse2();
}
Class Client
{
connect();
sendRequest();
}
myrequest = new Request();
client = new Client (myserver);
my $rawResponse1 = client.sendRequest (myrequest.prepareRequest1());
myresponse = new Response();
myresponse.processResponse1 ($rawResponse1);
나는 Request, Response 및 Client라는 세 가지 클래스가 있습니다. 요청 클래스는 요청과 관련된 기능을 포함합니다. 이러한 요청은 XML 요청입니다. XML 요청에는 몇 개의 초기 태그 (예 : sessionid 등)를 제외하고는 공통된 것이 없습니다. 다른 모든 XML 매개 변수는 요청 유형에 따라 다릅니다. 그래서, 현재 각 요청에 대해 별도의 함수를 생성하여 전달하고 있습니다. 확장 성 문제가 있다는 것을 이해합니다. 그러나 여기에서 적용 할 수있는 다른 최상의 방법을 제안 해주십시오.
요청과 마찬가지로 각 요청에 대한 응답에는 특정 처리가 필요합니다. 그래서 나는 기대하고있는 각 유형의 응답에 특정한 기능을 가지고 있습니다. 일반적으로 요청과 응답 사이에는 1 : 1 매핑이 있다고 가정 할 수 있습니다.
마지막으로 연결할 클라이언트 클래스입니다.
저는 이러한 요청과 응답을 거의 50 개 이상 보유하고 있으며이 접근 방식을 구현할 계획입니다. 내가 개발 초기 단계에 있으므로 요청/응답을 구현하기위한 몇 가지 개선/모범 사례를 제안하십시오.
:) 가지고 희망 .. 쉽게하는 XML 설정 파일을 수정하여 쉽게 귀하의 요청에 응답 클래스를 교환 할 수 있도록합니다 I가 거의 50 개 이상의 메시지의 다른 유형 (요청/응답). 각 메시지마다 하나씩 50 개의 클래스를 갖는 것이 좋습니다. – rpg
더 많은 수업을받는 것이 관리가 쉬운 한 범죄는 아닙니다. 그러나 다시 그것은 내 의견이다. 그러나 이러한 클래스를 관리하고 요청과 클래스 사이에 1-1 매핑을 사용하고 싶지 않다면, 내가 제안한 것처럼 항상 같은 요청을 클럽에 적용하고 동일한 클래스를 사용하여 서비스를 제공 할 수는 있지만 최선을 다합니다. 어떤 XML 요청을 맵핑 -> 어떤 클래스에 맵핑 -> XML 설정 파일의 코드 외부에있는 메소드로 맵핑. 그러면 유연성이 극대화됩니다. 클래스를 인스턴스화하고 리플렉션을 통해 메서드를 호출합니다. – sethu
감사합니다. sethu, 더 유망 해 보입니다. – rpg