문제

응용 프로그램이 Windows에서 Linux로 포트 할 계획이며 현재 내 응용 프로그램은 XML 구문 분석에 MSXML을 사용합니다. 크로스 플랫폼 솔루션을 제공하기 위해 Xerces XML 파서를 사용하기로 결정했습니다. 내 코드 크기가 너무 커서 기능의 일부를 깨뜨릴 수 있으므로이 포팅 목적을 위해 코드의 모든 내부 부분을 터치하고 싶지 않습니다. 누구 든지이 작업을 수행하는 가장 좋은 방법을 제안 할 수 있습니까?

도움이 되었습니까?

해결책

'내부 부분'의 의미에 따라 다릅니다. 이 작업을 수행하는 꽤 확장 가능한 한 가지 방법 중 하나는 일부 단계로 진행됩니다 (응용 프로그램에 대한 테스트가 있으면 무언가 잘못 될 때 발견 할 수 있으므로) : :

  • 사용하는 모든 XML 작업에 대한 인터페이스를 만듭니다
  • MSXML을 사용하는 해당 인터페이스의 구현을 제공하십시오
  • 모든 코드를 MSXML로 직접 대신 인터페이스와 대화하십시오. 인터페이스를 잘 설계했다면 철저한 찾기/교체의 문제 일 수 있지만 더 많은 작업이 필요할 수 있습니다.
  • 이제 모든 것이 여전히 작동해야하지만 실제 XML 로직에서 분리 된 이점이 있습니다.
  • Xercesc를 사용하여 인터페이스에 대한 또 다른 구현을 제공합니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top