2011-10-17 3 views
1

나는 공부를 끝내기 전에 게임을 만들려고 노력했습니다. 그물 주변을 검색하면서 Python (단순성 및 빠른 개발 시간) 및 C# (실제 성능 향상을 위해 실제 I/O 엔진)에서 기본 게임 논리를 작성하기로 결정했습니다. 특히 SFML 라이브러리와 함께 Mono를 사용하고 있습니다. . 두 언어와 IDE를 모두 사용한 후에 두 언어를 통합하는 데 어려움을 겪었습니다. 세 가지 질문이있었습니다. 가장 중요한 것은 두 번째입니다.파이썬과 C 통합 #

a. 어느 모듈이 다른 모듈을 캡슐화해야합니까? 파이썬 게임 로직이 입력을 위해 C# I/O를 호출 한 다음 출력을 위해 업데이트해야합니까? 그렇지 않으면 다른 방식으로 사용해야합니까?

b. 답이 무엇이든, 어떻게 할 수 있습니까? 어느 언어로든 스크립트 또는 바이너리를 이식 ​​또는 통합하는 것에 대한 구체적인 지침을 찾지 못했습니다.

c. 모듈 간 호출이 성능에 큰 해가됩니까? 그들이 원한다면, 모든 것을 하나의 언어로 개발해야합니까?

감사합니다.

답변

1

감사합니다. 저는 C#이 오늘 파이썬에서 많은 제품을 제공한다고 말하고 싶습니다. 존 소총을 인용하자면 :

당신은 알고 있나요 내가 정말 파이썬, 루비, 그리고 그루비 약 동적 언어처럼? 그들은 그 코드의 본질을 그대로 남겨 두어 코드에서 털이 빠져 나옵니다. 비트 은 실제로 그 일을합니다. 지루한 형식은 생성자, 람다 식 및 목록 이해와 같은 기능을 제공합니다. 재미있는 점은 동적 LAN을 제공하는 기능 중 일부는 경량 느낌이 동적이라는 것과 관련이 있음을 나타냅니다. 예를 들어, 코스 - 덕 타이핑 중 일부와 액티브 레코드에 사용 된 일부 마법 (예 : )이 있지만 정적으로 입력 된 언어는 서투른 헤비급 일 필요는 없습니다.

그리고 동적 입력도 가능합니다. 그것은 새로운 프로젝트입니다. 여기서는 C# 만 사용합니다.

2

IronPython을 고려한 적이 있습니까? 그것은 통합하는 것이 쉽지 않으며 통합이 잘 작동한다는 것은 .NET과 직접적으로 관련이 있기 때문입니다.

+1

봤어. 내가 필요로하는 것처럼 보이지만 확실하게하기 위해서 - ScriptEngine 명령을 사용하여 스크립트를 활성화하면 IronPython 스크립트의 일관된 변수가 유지됩니까? 로직 내의 각 엔티티가 성능이 무거운 지 점검 할 것인가? – nihohit