alt
Home IDL(Interface Definition Language)
Post
Cancel

IDL(Interface Definition Language)

: 다른 언어로 작성된 여러 서비스 들을 연결하기 위해 중간 인터페이스를 정의하는 언어


  • XML, JSON, Protocol Buffer 등이 있다.
  • 구조화된 데이터를 IDL로 직렬화(Serialization) 해서 보내, 통신 환경에서 이종간 플랫폼 환경에도 원활한 통신이 잘 되도록 한다.


XML

  • 사람이 읽고 쓸수 있음
  • 스키마 정보 없이 사용 가능
  • SOAP와 같은 표준이 있음
  • JSON에 비해 태그 등 때문에 같은 데이터라도 내용이(코드가) 더 많음
  • 인코딩, 디코딩에 상대적으로 많은 리소스 소비


JSON

  • 사람이 읽기에 가독성이 좋음 -> 개발, 디버깅에 편리
  • 스키마 정보 없이 사용 가능
    • 간결함 좋음
  • 웹 브라우저에 용이
  • XML에 비해 가벼움
  • 표준이 없음


PB(Protocol Buffer)

  • Byte Stream으로 직렬화해 보냄 -> 이진 데이터라 사람이 읽을 수 없음
  • 데이터 압축률 좋음
  • 처리속도 빠름
  • 스키마에 대한 정확한 지식 필요
  • 구글에서 개발한 직렬화 프로토콜



Reference)

https://www.joinc.co.kr/w/man/12/ProtocolBuffer

http://gdthink.blogspot.com/2006/07/idlinterface-definition-language.html

https://soulduo.tistory.com/91

This post is licensed under CC BY 4.0 by the author.