하하... 드디어 제가 확실하게 답해드릴 수 있는 질문이 나왔네요.
일단 VS에 포함된 걸 쓰세요. 이런건 Enterprise 버전이라고, 모든 것이 가장 완전하게 지원되고 있습니다. 또한 개발은 VC++만으로 하는 것이 아니므로, 각종 도구가 포함된 VS가 좋습니다.(VS 6.0은 CD 한장 밖에...) 그리고 가급적 실무에서 가장 많이 쓰이는 6.0 이나, 여러 버그와 문제를 해결한 7.0 (또는 .net 버전의) 의 VC++를 권장합니다.
언어는, C로 시작하셔도 좋겠지만, C++를 염두에 두시고 시작하세요. 굳이 C나 C++를 구분짓지 말고 그냥 그런가보다하며 C++ 로 C를 쓰듯이 배워나가는게 좋은 것 같습니다.(뭐라 말하기 힘들지만 제 경험상)
DirectX는, 죄송합니다만 매우 고급 기술에 속합니다. 어느 정도 기초가 안되어서는 힘들구요, 일단 기본 문법(숟가락 질을 할 줄 알아야)을 자유자재로 구사하시고, Windows API만 사용하여 프로그램을 어느 정도 짤 줄 알아야 합니다(젓가락질도 할 줄 알아야 하는 거죠).
그리고 이렇게 차근 차근 실력을 쌓다가 나오는게 DirectX 입니다. DirectX는 COM이란 기술을 사용하였는데 이 것은 C나 C++에선 상당히 고급 분야입니다(뭐 별 건 없습니다. 이해할 필요 없이 그냥 써도 됩니다). DirectX 를 이해하고 자유자재로 쓰기 위해선, 역시 C++를 알아야 합니다. (실제로 DirectX를 C로 사용하는 경우는 드뭅니다). COM이 객체지향적 구조를 가지고 있거든요. 클래스 같은 것의 사용법은 아는게 수월합니다. ※여담이지만, 저는 객체지향하면서 디자인 패턴도 연구중인데 이건 장난이 아니더라는 -_-;
제 생각에는, 창조에만 익숙하시다면 창조에는 없는 구조체 같은 것을 다룰 줄 아셔야 할 것 같네요. 또 객체 편집 없이 코딩으로만 하는 작업에도 익숙해지셔야 합니다(DirectX에는그림이나 버튼도 모두 순수 코딩으로 처리하고 있습니다.).
여하튼, DirectX 는 익숙해지지 않으면 매우 어려운 것 처럼 보인다는게 사실입니다. 또한 C는 중급 언어로 분류되기 때문에 컴퓨터 동작에 대한 좀 더 낮은 수준의 지식을 요구합니다.
그 밖에도 사소한 차이로, 대소문자 구분이라든지, 다양한 정수 형식과 각종 키워드때문에 좀 어려워보일 수도 있지만(창조에 익숙해져 있다면 include가 가장 생소할테죠), 익숙해지면 아무것도 아닙니다. 마치 영어를 자주 접하는 우리가, 대화할 때 영어를 조금 섞는다고 별 무리 없듯이, 익숙해지면 자연스럽게 쓸 수 있습니다. 뭐 완전 다른 자연어도 아니고 개념이 같은 프로그래밍 언어라 더욱 적응이 빠릅니다.
필요한 것은 열정과 관심, 그리고 좌절하지 않음 정도겠지요.
다행히도, C/C++ 관련 자료가 가장 많기 때문에, 익히는데는 별 어려움이 없을 것입니다. |