문제

두 개의 응용 프로그램 (C#, Java의 다른 하나)이 호환되도록 가장 잘 보장하는 방법에 대한 조언을 드릴 수 있습니까? 그리고 데이터 교환이 효율적입니까? 당신이 만난 gotchas가 있습니까?

시나리오는 Point to Point이고, 한 호스트는 서비스 제공 업체이고 다른 호스트는 서비스 소비자입니다.

도움이 되었습니까?

해결책

살펴보십시오 protobuf 데이터 교환 형식. .NET 구현도 있습니다 사용 가능.

다른 팁

설명 데이터에 대한 JSON 및 일반 데이터 유형의 경우 XML. 그것이 당신에게 충분히 효율적이지 않다면, 당신은 자신의 코덱을 롤링하여 C#과 Java의 바이트 순서 차이.

특정 기술에 초점을 맞추기보다는 내가 줄 수있는 최선의 조언은 둘 사이의 인터페이스 (웹 서비스, 데이터베이스 또는 전적으로 다른 것) 사이의 인터페이스에 초점을 맞추는 데 시간을 소비하는 것입니다. 예를 들어 웹 서비스 인 경우 명확한 WDSL 문서를 작성하는 데 중점을 둡니다. 인터페이스, 인터페이스, 인터페이스. 대부분의 경우, 두 언어 모두 선택을 지원할 수 있도록 일부 프로토 타이핑 외부에서 각 끝의 특정 기술을 무시하십시오.

또한 주요로드 블록 외에는 효율성에 중점을 두지 않습니다. 명확성에 집중하십시오. 이 인터페이스의 양쪽 끝에있는 두 팀 (즉, 다른 사람들)이있을 것입니다. 그들이 올바르게 사용하는 것이 조금 더 빨리 만드는 것보다 훨씬 더 중요합니다.

Webserver로 Java가있는 경우 Jax-Ws를 사용할 수 있습니다. https://jax-ws.dev.java.net/ ) Java WebServer에 연결하려면 .NET을 위해 웹 서비스와 WCF를 만들려면 ..

XML (항상 효율적이지는 않음)과 같은 것을 사용할 수 있거나 자신의 독점적 인 이진 형식을 제시해야합니다 (효율적이지만 훨씬 더 많은 작업). XML로 시작하고 대역폭이 문제가되면 언제든지 독점적 인 이진 형식으로 전환 할 수 있습니다.

비누 같은 것 (위키 백과) C#과 Java 모두가 지원합니다.

웹 인터페이스에는 C#/vb.net을 사용하고 두꺼운 클라이언트에는 Java를 사용합니다. 우리는 XML과 웹 서비스를 사용하여 데이터베이스와 응용 프로그램 서버간에 통신합니다. 아주 잘 작동합니다.

데이터를 전달하기 위해 잘 정의 된 프로토콜을 사용하고 신청서가 계약에 따라 응답하도록하기 위해 테스트를 작성하십시오.

이것은 광범위한 질문이지만 두 플랫폼 모두에 적용되는 표준에 초점을 맞추는 것이 좋습니다. XML 또는 다른 표준 형태의 직렬화 형태, 상호 작용이 필요한 경우 서비스를 위해 REST를 사용합니다.

XML을 사용하는 경우 실제로 데이터 액세스를 XPath 문으로 외부화하여 두 응용 프로그램에서 사용하는 공유 리소스에 저장할 수 있습니다. 그것은 시작입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top