2011-08-24 2 views
0

VB 6.0에서 작성된 크리켓 관리 게임 (예 : Football Manager)이 있습니다. MS-Access는 UI 화면을 그리는 백엔드 및 Win-32 API 호출로 사용됩니다. 90,000 개 이상의 코드 라인이있는 합리적으로 큰 게임입니다.축구 관리자와 같은 데이터 중심 게임에 적합한 언어 및 데이터베이스

이제 Java, Python, C++ 등의 다른 기술을 사용하여 게임을 다시 작성하고 싶습니다. 기본적으로 저는 Microsoft 기술에서 벗어나고 싶습니다. (가능하면 무료로 사용할 수있는 기술로 이동하는 것이 좋습니다.)

그래서 애플리케이션 로직, UI 및 데이터베이스에 적합한 기술을 선택하는 데 도움을주십시오. 다음은 세 가지 레이어에 대한 나의 광범위한 요구 사항입니다.

응용 프로그램 로직 :
게임은 메모리 내 데이터를 계산 1000을 할 필요가 지속적으로 데이터 파일 (게임 파일을 저장) 텍스트 것을 쓰기. 또한 매우 빠른 데이터베이스 작업이 필요합니다.

UI :
UI가 강력 할 필요는 없습니다. 유일한 요구 사항은 최소한의 애니메이션 효과로 멋진 화면을 개발할 수 있어야합니다. 다음은 참조 용 현재 화면 이미지에 대한 링크입니다. http://imageshack.us/g/148/89832593.png/
향후 2D 그래픽을 추가 할 수도 있습니다.

데이터베이스 :
데이터베이스는 300000 개 기록까지 포함하는 큰 테이블 20 표가 포함되어 있습니다. 다시 말하지만, MySQL이나 일반 텍스트 파일과 같은 무료 데이터베이스를 사용하고 싶습니다. "Football Manager"또는 "Cricket Coach 2011"과 같은 게임에 사용되는 데이터베이스에 대해 매우 궁금합니다.

참고 : 제안 된 기술을 배우는 데 필요한 노력은 고려하지 마십시오. 나는 그들을 돌볼 것이다.

업데이트 : 지금은 C++과 SQLite는 함께 진행하기로 결정했다고
, 나는 시작하기 위해 사용되어야하는 IDE 및 기본 도구/라이브러리에 대해 나에게 직접하시기 바랍니다.

"Visual Studio"및 "Eclipse"작업에 이미 경험이 있습니다. 그 중 하나를 사용할 수 있습니까? 또는 QT로 갈 수 있습니까 (QT는 크로스 플랫폼이라고 읽었지 만, 모바일 개발 전용입니까, 아니면 데스크톱 응용 프로그램 용으로도 사용할 수 있습니까)?

그리고 처음에 IDE를 선택하는 것이 얼마나 중요합니까? 나중에 다른 IDE로 이동할 수 있습니까? Visual Studio를 사용하는 경우 Microsoft 기술에 바인딩되어 있습니까?

가능한 경우 위 링크 에서처럼 화면을 개발할 수있는 예제 링크를 제공하십시오. http://sqlite.org/

그건 무료, 빠르고, 서버를 사용하지 :

데이터베이스에 대한

답변

1

, 나는 SQLite는 추천 할 것입니다. 서버리스입니다. 웹 사이트에서 읽을 수있는 몇 가지 단점이 있지만 독립형 응용 프로그램의 경우 텍스트 파일을 사용하는 것보다 훨씬 낫습니다.

+0

안녕하세요 John, Java 및 Python과 같은 언어 용 드라이버가 있습니까? –

+0

@Srikanth : 다음은 래퍼 목록입니다. http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers 태양 아래 모든 것을 가지고있는 것으로 보입니다. –

2

[이제는 "온라인 게임"이 내 부분에 대한 가정이었습니다. 그래서 당신이 이것을 읽을 때 명심하십시오.]

나는 귀하의 호스팅 옵션을 고려할 것입니다. 오픈 소스를 원하거나 구두 끈 예산으로 운영하고 가장 다양한 배열의 호스팅 서비스에서 실행하려면 LAMP 기술을 사용하고 싶을 것입니다. 이렇게하면 내가 선호하는 언어 인 자바가 기본 언어 선택으로 배제됩니다. PHP는 거의 항상 저렴한 호스팅 옵션에서 사용할 수 있습니다. Perl과 Python은 많은 호스트에서 사용할 수 있지만 요즘에는 PHP가 실제로 보장됩니다.

그러나 "환경에 관계없이"Java, Tomcat, JBoss 등을 열렬히 소중히 여기고 있습니다.하지만 이러한 기술은 강력하지만 많은 시간을 필요로합니다. 사용법을 익히고, 더 중요하게는 효과적이고 효율적으로 사용하십시오.

요즘 데이터베이스는 MySQL을 선택하는 것이 좋습니다. Postgresql은 다른 무료 옵션입니다 (MySQL의 경우 오라클 연결에 따라 MySQL보다 다소 자유 롭습니다).하지만 MySQL은 많은 저렴한 호스트에서보다 쉽게 ​​사용할 수 있습니다. MySQL은 "매우 빠른 작업"에서도 자격이 있습니다.

데이터베이스 선택에 관계없이 데이터베이스 코드를 추상화 할 수있는 작업을 수행하십시오. 그렇게하면 최소한의 소동으로 변경하거나 변경해야 할 필요가 있습니다. PHP와 Java는 모두이 점에서 당신을 도울 ORM을 잘 가지고 있습니다.

* Manager 제목과 같은 게임에서 어떤 데이터 모델이 사용되는지 알아 보는 것은 흥미로운 일입니다. 나는 그것이 관계형 데이터베이스에 잘 맞을 것으로 생각한다. 그러나 저는 개인적으로 NoSQL 솔루션을 사용하는 좋은 이유를 직접 목격하고 있습니다.

클라이언트를 시작할 수있는 HTML과 CSS.

+0

안녕하세요 Marvo, NoSQL 솔루션이 내 마음에 백엔드입니다. 그러나 그것을 구현하는 방법에 대해 잘 모르겠습니다. 추가 지침은 인정 될 것이다. 그건 그렇고, 내 응용 프로그램은 데스크톱 응용 프로그램입니다. 미안, 내 질문에 충분히 명확하지 않은 경우. –

+0

나는 귀하의 질문이 완벽하게 분명하다고 생각합니다. 나는 내 생각을 너 자신에게 투사하고 있었다. =) 사용자 그룹에서 NoSQL 솔루션에 대해 몇 차례 이야기했지만 그게 전부입니다. 나는 데스크톱 솔루션에 대해 들어 본 적이 없다. – Marvo

+0

Java는 데스크톱에서 실행되는 이와 같은 게임에 적합한 언어입니다. 그것은 당신에게 이식성을 제공하고, Swing이나 비슷한 것을 사용한다면 각 플랫폼에서 똑같이 보일 것이며, 문제의 게임 유형에 대해서는 필요한 성능을 제공 할 것입니다 (게임의 어느 곳에서도 트 위치 요소가 없다고 가정합니다). 그러나 JVM은 .NET 솔루션에 VM도 필요합니다. (내 언어 선택을위한 또 다른 플러그) – Marvo

관련 문제