1

official site 및 일부 다른 출처는 Google 프로토콜 버퍼의 장점 중 하나가 상호 운용성이 높은 것으로 설명합니다. 이 기술이 다른 언어 바인딩을 지원하고 제 3 자 구현으로 더 많은 것을 지원한다는 것을 알고 있습니다. 그러나 그 의미는 정확히 무엇입니까?Google 프로토콜 버퍼를 다른 언어로 직렬화/구문 분석 할 수 있습니까?

일반적인 스키마 파일을 가지고있는 한 protoc 컴파일러를 실행하고 여러 언어의 코드를 생성 한 다음 생성 된 코드를 사용하여 한 언어로 프로그램을 작성하고 일부 데이터를 직렬화한다고 생각하면 정확하다고 생각합니다. 파일에 저장 한 다음 다른 프로그램의 다른 언어로 구문 분석 할 수 있습니까?

예를 들어, Java에서 실행중인 내 클라이언트 측 응용 프로그램이 Google 프로토콜 버퍼를 직렬화하여 C++로 구현 된 서버로 전송할 수 있습니다. 그런 다음이를 구문 분석하고 양측이 생성 된만큼 쉽게 사용할 수 있습니다 같은 스키마 파일?

이 정확하면입니다. 직렬화/구문 분석 논리가 here의 공통/일관된 와이어 형식을 따르고 있습니까?

답변

2

예, 그렇습니다. 예를 들어, 와이어 형식이 고정되어 있습니다 (즉, 모든 언어 바인딩에서 동일 함).

+0

감사합니다. 죄송합니다. 질문이 무의미 해 보였을 때 - 나는 정확히 그 하하를 정확히 말한 곳을 찾을 수 없었습니다. – Grandclosing