Protocol Buffer
프로토콜 버퍼는 구글에서 만든 데이터 직렬화 규격이다. 바이너리 기반 규격이기 때문에 빠르고 효율적이고 가볍게 데이터를 처리할 수 있지만 사람이 알아보기엔 어렵다는점이 있다. 또한 수신측은 송신측과 같은 메세지 구격을 사용해야만 원래 메세지를 읽을 수 있다.
메세지 코드 규격화
스키마 파일
스키마 파일 메세지의 규격을 작성하는데 쓰인다. C의 구조체와 비슷한 개념이라 생각하면 이해하기 쉽다.
프로토콜 버퍼 컴파일러
컴파일러는 스키마 파일에 필요한 언어를 인터페이스 코드로 만들어준다.
인터페이스 코드
인터페이스 코드는 컴파일러가 스키마를 읽어 만든 결과물이다. 이 인터페이스 코드를 통해서만 데이터를 직렬화 / 역직렬화할 수 있다.