최근에 교수 개발 팀이 게임 개발이 프로그래밍을 배우는 가장 좋은 방법이라고 들었습니다. 그는 모든 것이 코드로 작성되어야한다는 사실 외에도 프로그램에서 OOP를 완전히 경험하고 구현할 수 있다고 말했다. 다시 말해서 게임에서 만드는 모든 것은 기술적으로나 개념적으로 문자 그대로의 객체입니다. 이 가정을하는 것이 안전합니까? 아니면 프로그래밍을 배울 때 항상 예외가 있습니까?
주의 가 .NET / XNA / C # 개발에 맞도록했다.
최근에 교수 개발 팀이 게임 개발이 프로그래밍을 배우는 가장 좋은 방법이라고 들었습니다. 그는 모든 것이 코드로 작성되어야한다는 사실 외에도 프로그램에서 OOP를 완전히 경험하고 구현할 수 있다고 말했다. 다시 말해서 게임에서 만드는 모든 것은 기술적으로나 개념적으로 문자 그대로의 객체입니다. 이 가정을하는 것이 안전합니까? 아니면 프로그래밍을 배울 때 항상 예외가 있습니까?
주의 가 .NET / XNA / C # 개발에 맞도록했다.
답변:
게임 개발은 제 생각에 가장 어려운 개발 중 하나입니다. 1 인칭 슈팅 게임을 만드는 사람이 알아야 할 모든 개념을 살펴 보자.
하나의 게임이 동시에 많은 영역을 커버 할 수 있습니다 . 이것은 당신이 기꺼이 시간을 보내고 그것을 좋게 만들고 싶다면 훌륭한 학습 도구가됩니다.
OOP에 관해서는, 그것은 잘 작동하는 하나의 패턴입니다. 게임을 학습 도구로 사용하여 훌륭한 디자인 기법을 연습 할 수 있습니다.
그러나 질문에 대답하는 것이 프로그래밍을 배우는 유일한 방법은 아닙니다. 중간 개발자가되면 게임을 만들면 많은 프로그래밍 개념과 레벨을 만질 수 있습니다. 게다가 재미 있어요!
긴장이되어서는 안되지만 프로그래밍은 프로그래밍을 배우는 가장 좋은 방법입니다. 컴퓨터 게임에 관심이 있다면 프로그래밍 게임은 프로그래밍을 배우는 좋은 방법 일 수 있습니다.
나는 게임을 신경 쓰지 않지만 수학을 좋아하므로 많은 학습 프로젝트가 본질적으로 매우 수학적이었습니다.
결론은 코드 관련 문제를 해결하는 방법을 찾아야하며 게임은 많은 사람들에게 효과적이라는 것입니다.
그것은이다 다른 방법들, 프로그래밍을 배울 수있는 방법입니다. 코드를 작성할 때 배우게됩니다. 지금, 그것은이다 가장 좋은 방법은? 확실하지 않습니다.
적어도 선생님이 제시 한 두 가지 이유는 유효하지 않습니다 .
"모든 코드를 만들 수 있었다" : 당신이 비즈니스 응용 프로그램을 작성할 때, 당신은 실제로 코드를 작성하고 있습니다. 그것은 마술로 쓰여지지 않을 것입니다. 예, 자동 생성 코드를 사용할 수있는 도우미가 있습니다. 아니요, 반드시 사용해야하는 것은 아닙니다. 그건 그렇고, 자동 생성 된 부분은 일반적으로 프로그래밍에서 가장 성가신 것입니다 (흥미롭고 유용한 것을 배울 수있는 Windows Forms 컨트롤에 컨트롤을 추가하는 것이 아닙니다).
"귀하의 프로그램에서 OOP를 완전히 경험하고 구현해야합니다." 누군가 이것이 왜 게임에만 유효하지만 다른 것에 대해서는 유효하지 않은 이유를 설명해야합니다. OOP를 이해하고 사용하려면 비즈니스 응용 프로그램에서도 사용할 수 있습니다. 얻지 못하거나 사용하지 않으려는 경우 (예를 들어 기능 프로그래밍 사용을 선호하는 경우) 게임 개발을 통해 변경하도록 강요하지 않습니다.
게임 개발은 재미있을 수 있습니다 . 대부분의 젊은이들은 게임을 좋아하므로 비즈니스 앱을 작성하는 대신 게임을 개발하는 것을 좋아할 것입니다. 이를 통해 교사는 실제로 게임이 프로그래밍을 배우는 가장 좋은 방법이라고 믿기 시작하고 논리적 설명을 찾으려고 노력할 것입니다.
이 교사들은 비즈니스 앱 개발과 같은 젊은이들에게 게임 개발을 지루하게 만들어서 끝납니다. OOP 등 을 배우기 위해 게임을해야한다고 생각한다면 학생들은 전혀 즐겁지 않은 종류의 프로젝트를하도록 요청할 것입니다. 이것은 제가 대학에있을 때 선생님들의 가장 큰 실수 중 하나였습니다. 그들은 콘솔 모드에서 Ada로 작성할 게임 프로젝트를 매우 자주주었습니다. 그래픽이 없습니다. 재미 없어. 사용자 경험이 없습니다. 나는 평생 동안이나 직장에서 그처럼 지루한 프로젝트를 본 적이 없습니다.
BadGuy
, Weapon
, PowerUp
, 게임 및 기타 항목을 쉽게 객체가 될 수 있습니다. 당신은 객체 간의 프로그램 상호 작용에 도착하고는 볼 에 화면을. 나는 시각적 부분이 그렇게 매력적이라고 생각합니다. 유형 계층 구조가 비즈니스 애플리케이션 ServerTaskScheduler
, AbstractDataProcessor
, UserQueryAgent
, 등 ...으로하지 않습니다 흥미로운 그들이 게임에서와 같은 OOP 개념을 가르 칠 수있다하더라도.
Customer
나 Product
또는 Transaction
객체가 될 수 있습니다. 그러나 나는 BadGuy
지루하지 않고 s 를 다루는 것이 훨씬 즐겁다는 것을 이해합니다 Transaction
.
Transaction
수반 되는지 모르는 일부 개발자를 만났습니다 .
게임 프로그래밍은 게임 프로그래밍을 배우는 가장 좋은 방법입니다. 웹 개발을 배우려면 시스템 프로그래밍을 배우려면 그렇게하십시오.
게임 프로그래밍은 까다 롭고 많은 것들을 가르쳐 줄 것입니다 (마이클은 그의 대답에서 많은 사람들을 지적했으며 많은 것들이 매우 도전적이고 외부 게임에서도 사용할 수 있습니다). RPG 또는 타이쿤 (또는 유사한 게임)을 만들면 OOP 디자인에 대해 많은 것을 가르쳐 줄 것입니다. 패러다임에 매우 적합하기 때문입니다. 또한 그래픽과 물리의 복잡성에 따라 성능 고려 사항, 게임을위한 일부 하드 코어 수학 등에 대해 많은 것을 배울 수 있습니다.
좋은 방법이며 어떤 것을 배우는 가장 좋은 방법이지만 프로그래밍을 배우는 데 좋은 방법은 아닙니다. 프로그래밍 한 게임 수에 관계없이 운영 체제를 만드는 방법에 대해 전혀 모를 것입니다. 시간이있는 한 대부분의 개발자는 게임을 개발의 주된 훈련으로하지 않더라도 게임을 개발하여 무언가를 벌 수 있다고 생각합니다.
질문 : 프로그래밍을 배우는 가장 좋은 방법은 무엇입니까
답변 : 실제로하는 방법
즉, 배우거나 무언가를 할 때 어떤 방법을 선택했는지는 중요하지 않습니다. 실제로 사용하는 방법입니다.
게임이 정말 재미있는 것 같다면 가십시오. 수학 문제 해결이 더 만족 스러우면 시작하십시오. 다양한 종류의 프로그래밍이 있으며 각각 다른 기술이 필요하므로 가장 흥미로운 방법은 가장 흥미로운 것으로 시작하는 것입니다. 아마도 아마도 당신이 함께 할 것입니다.
... 그러나 그렇습니다. 게임은 수학, 동시성, 알고리즘, oop, 그래픽 등을 통합하기 때문에 매우 다양한 프로그래밍을 배우는 좋은 방법입니다.
아니에요 프로그래밍을 배우는 데 가장 적합한 유형의 프로젝트 는 없습니다 . 가장 좋은 유형의 프로젝트는 귀하의 관심사와 관련된 것입니다.
예를 들어, 나는 게임 프로그래밍을 배우는 것을 포함하여 몇 가지 다른 방법으로 프로그래밍을 배우려고했습니다. 그냥 붙어있는 것 같지 않았습니다.
그런 다음 연구에서하고있는 일을 프로그래밍하는 방법을 배워야했을 때? 지금은 2 개 언어를 알고 3 분의 1을하고 있다고 말할만큼 편안합니다. 왜? 그것은 내 관심사와 관련이 있기 때문입니다. 나는 그 책에 나오는 "운동 8"보다 그것을 고집해야 할 이유, 배워야 할 이유, 그리고 더 많은 문제들이 있었다.
우연히도 전염병 모델을 프로그래밍하는 것이 프로그래밍을 배우는 가장 좋은 방법은 아닙니다. 그러나 그것은 나에게 가장 좋은 방법이었습니다. 당신을 찾으십시오. 게임 일 수도 있지만 그렇지 않을 수도 있습니다.
내 경험상, 게임을 작성함으로써 (자신의 / 소규모 개발자 팀에서이 작업을 수행한다고 가정), 프로그래밍의 알고리즘 / 분석 부분뿐만 아니라 사용자 경험과 디자인에 대해서도 생각해야합니다.
또한 합리적으로 복잡한 게임이라면 몇 달 동안이 작업을 수행하게되며 모든 작업을 문서화하는 것이 중요하다는 사실을 알게 될 것입니다.
나는 이것이 게임 개발에 대한 통찰력을주는 훌륭한 기사라고 생각한다.
집중해야 할 몇 가지 기본 영역에 대해 이야기합니다.
동의하지 않을 것입니다 ...
많은 사람들이 레고 로봇 (Mindstorms)을 구축하고 프로그래밍 한 최초의 프로그래밍 경험 일 것입니다.
일반적으로 "게임"이라는 용어는 거의 모든 프로그래밍을 포괄 할 정도로 거대한 범주를 정의 할 수 있지만, 원래 포스터의 맥락에서 사용될 때는 항상 "둠 스타일 게임 작성"을 의미하는 것 같습니다.
앞에서 언급했듯이 프로그래밍을 배우는 가장 좋은 방법은 프로그램이 필요한 정말 원하는 것을 얻는 것입니다. 즉-원하는 프로그램을 작성하여 프로그래밍을 배우십시오.
첫 번째 Windows 프로그램 중 하나는 MIDI 컨트롤러 프로그램이었습니다. 왜냐하면 MIDI 컨트롤러 프로그램을 정말로 원했기 때문에 Windows는 슬라이더, 버튼, MIDI에 대한 SDK 지원 등 완벽하게 맞습니다. 그 프로그램에서 Windows 프로그래밍에 대해 많은 것을 배웠습니다.
나는 여기에 언급 된 이유로 게임 프로그래밍에 부분적 인 적이 없었습니다. 나는 그다지 잘 그리는 것이 아니므로 내가 만드는 게임은 아티스트의 그래픽보다 열악한 그래픽을 갖게됩니다. 나는 "게임 제작팀"을 관리하는 것이 아니라 프로그램하는 법을 배우고 싶다.
결국 나는 선생님의 진술에 동의하지 않습니다. 프로그래밍을 배우는 가장 좋은 방법은 원하는 프로그램을 작성하는 것입니다.
-아르 자형