서버 클라이언트 언어가 다를 경우, 공용 코드 관리 방법 문의 드립니다.
글쓴이: boooy / 작성시간: 목, 2016/05/26 - 4:18오후
안녕하세요 다른 커뮤니티에 올렸던 질문인데요 이곳에도 문의 드립니다
서버와 클라 모두 구현하려고 합니다. 이때 서로간에 공용으로 사용될 코드가 예상되는데요 (접근 url, 테이블 매핑 객체 및 기타)
이경우 언어가 다르던지 해서 코드 작성시 서로 참조가 안될 경우, 양쪽에 코드 중복으로 수정이나 관리가 귀찮아질 것 같습니다
보통 이경우 어떻게 해결 하시는지요?
제가 생각한 방법은 아래와 같으나.. 전혀 다른 방법이 정석일 것 같아 질문 드립니다
1. 언어간 변환툴을 사용한다 (없으면 만든다. 보통 key-value형태의 class 들이니 언어특성을 거의 타지 않음으로)
2. 통신할때 사용하는 데이터 형식(json등)이 있으니 이것만 손으로 짜고 양쪽에 사용될 파일들은 이 파일로 부터 각각 자동 생성되게 한다(예:json > 서버 class, json > 클라 class). 통신하지 않는 공용 코드도 같은 방식을 사용한다.
서버는 python, 클라이언트는 actionscript(air)로 생각중이나 꼭 이 상황에 해당되는 질문은 아닙니다. 서버가 자바 클라가 c++인 경우등 언어가 다른 상황에서의 해결법이 궁금하네요
Forums:
이 쪽 개발 경험은 없습니다만
language-neutral, platform-neutral한 프로토콜을 정의하는 방법이야 여럿 있을 수 있겠죠.
질문자님이 말씀하신 대로 data serialize부터 시작하지 않을까 싶은데, 뭐 protobuf(https://developers.google.com/protocol-buffers/ ) 같은 거 찾으시는 건가요? 이게 질문자님의 1과 2를 조금씩 커버하고 있는 것 같은데요.
유감스럽게도 소위 application-specific한 부분에 대해서는 직접 작성하시는 것밖에 달리 도리가 없을 것 같군요.
말씀 주신 Protocol Buffers가 딱이네요
감사드립니다
해당 언어의 파일로 자동 생성 기능도 있고 제가 원하던 기능은 다 있는듯 싶습니다
(ActionScript로의 변환은 기대하지도 않던 부분인데 third-party add-on으로 있네요)
댓글 달기