2008년 10월 29일
Automatic Lua Binding System
GPG7에 "Automatic Lua Bindig System"의 적용 후기?
우선 글 내용이 기존에 작성된 클래스에 손쉽게 루아 코드를 바인딩하는 방법에 대한 글이라 가져다가 바로 적용하기는 굉장히 쉽습니다. (하지만! 제목처럼 진짜 자동은 아닙니다 )
회사의 라이브 코드의 경우 몇 년간 작성한 코드인데다 처음 개발시에 스크립트 쪽은 전혀 고려하지 않았기 때문에 *알고 있는 방법들로는 어려웠는데 이 방법은 큰 어려움 없이 적용이 가능했습니다. 레가시(legacy) 코드에 스크립트 시스템이 필요한 경우라면 한 번 살펴 볼 것을 추천합니다.
게다가(고맙게도) 기존의 코드들 중에 필요로 하는 부분이 Singleton이어서 적용이 더욱 쉬웠습니다. (책 내용도 클래스가 singleton인 경우를 가정합니다)
역시 C에서 흑마술 관련한 코드는 매크로가 짱입니다. ^^ 다만 매크로인 관계로 가독성은 상당히 떨어집니다.
덧붙이자면 처음부터 스크립트 시스템을 고려하는 경우라면 이 방법은 권하고 싶지 않습니다. 가독성이 심하게 떨어지는데다 더 쉬운 방법들도 많기 때문입니다. 스크립트 (바인딩) 시스템이라는 것이 결국은 뜯어 놓고 보면 클래스 인스턴스, 멤버 함수 이름, 리턴 값, 인자들을 헤쳐 모이는 방법에 대한 것인데, Nebula의 방법이 어렵지 않아 추천할만 하죠.
요즘은 **게임 관련한 루아 책들도 심심찮게 보이던데, GPG의 루아 관련 글 중에서는 GPG 5권의 "Building Lua into Games"와 GPG 7권의 "Automatic Lua Bindig System" 은 한번쯤 읽어 보길 권합니다.
* Nebula 스크립팅 시스템의 응용, SWIG 이용 등
** 예제로 배우는 프로그래밍 루아 등.
우선 글 내용이 기존에 작성된 클래스에 손쉽게 루아 코드를 바인딩하는 방법에 대한 글이라 가져다가 바로 적용하기는 굉장히 쉽습니다. (하지만! 제목처럼 진짜 자동은 아닙니다 )
회사의 라이브 코드의 경우 몇 년간 작성한 코드인데다 처음 개발시에 스크립트 쪽은 전혀 고려하지 않았기 때문에 *알고 있는 방법들로는 어려웠는데 이 방법은 큰 어려움 없이 적용이 가능했습니다. 레가시(legacy) 코드에 스크립트 시스템이 필요한 경우라면 한 번 살펴 볼 것을 추천합니다.
게다가(고맙게도) 기존의 코드들 중에 필요로 하는 부분이 Singleton이어서 적용이 더욱 쉬웠습니다. (책 내용도 클래스가 singleton인 경우를 가정합니다)
역시 C에서 흑마술 관련한 코드는 매크로가 짱입니다. ^^ 다만 매크로인 관계로 가독성은 상당히 떨어집니다.
덧붙이자면 처음부터 스크립트 시스템을 고려하는 경우라면 이 방법은 권하고 싶지 않습니다. 가독성이 심하게 떨어지는데다 더 쉬운 방법들도 많기 때문입니다. 스크립트 (바인딩) 시스템이라는 것이 결국은 뜯어 놓고 보면 클래스 인스턴스, 멤버 함수 이름, 리턴 값, 인자들을 헤쳐 모이는 방법에 대한 것인데, Nebula의 방법이 어렵지 않아 추천할만 하죠.
요즘은 **게임 관련한 루아 책들도 심심찮게 보이던데, GPG의 루아 관련 글 중에서는 GPG 5권의 "Building Lua into Games"와 GPG 7권의 "Automatic Lua Bindig System" 은 한번쯤 읽어 보길 권합니다.
* Nebula 스크립팅 시스템의 응용, SWIG 이용 등
** 예제로 배우는 프로그래밍 루아 등.
# by | 2008/10/29 16:22 | Development | 트랙백 | 덧글(0)
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]