3. 알콜코더 박민근(@agebreak)
NHN NEXT 게임 전공 교수
네오위즈 게임즈 - 야구의 신 개발
NTL-inc - 드래곤볼 온라인 개발
엔씨소프트 – PlayNC 빌링 서버 개발
‘신입 게임 개발자의 서울 상경기’
(http://agebreak.blog.me)
‘초중급 게임 개발자 스터디 (데브루키)’
(cafe.naver.com/devrookie)
게임 개발자 랩소디 (팟캐스트)
(http://www.podbbang.com/ch/3921)
게임 클라이언트 프로그래머
30대… 그리고 오타쿠 프로그래머...
언젠가는 우즈벡에.. 일류젼 우즈벡 지사를 설립할 예정
11. • 객체 지향적으로 클래스를 제작
하고, 상속, 다형성등…
객체 지향 프로그래밍 기법을 활
용한다.
• 포인터를 이용하여 메모리의 할
당과 해제, 관리를 이해 한다.
• C++ 디버깅!
12.
13. •학습
•PL in C++ 개념
•PL in C++ feature
•PL in C++ 스킬
월요일 (2시간)
•프로젝트 제작
•BattleShip Game
•배운 개념과 지식을 실제로 활용
•실제 게임을 구현하면서 학습
•학습한 내용들을 이해하여 적용
목요일 (3시간)
29. Pair Programming
• 실습은 짝 프로그래밍으로 진행된다.
• 2인 1조가 되어 하나의 PC로 같이 프로그
래밍 한다.
• 한사람은 드라이버, 한사람은 내비게이터가 된다.
30. Pair Programming의 목적 및 효과
• 코드의 품질을 향상 시킨다.
• 개발에 대하 집중력을 높인다.
• 팀 내 커뮤니케이션을 증진시킨다.
• 지속적인 코드 리뷰가 될 수 있다.
• 협업을 통해 서로가 서로를 발전 시킬 수 있다.
• 개발이 좀 더 즐거워 질 수 있다.
31. PP 기본 진행 방식
• 1대의 PC에서 두명의 팀원이 같이 작업을 진행한다.
• 키보드와 마우스를 잡고 있는 사람이 ‘드라이버’, 옆에 앉아서 함
께 작업하는 사람을 ‘네비게이터’라고 한다.
• 일반적으로 네비게이터가 주도적으로 작업을 진행하게 된다.
• 네비게이터는 자신이 할려는 일을 이야기 하고, 드라이버는 질문
과 제안을 한다.
32. PP 기본 마음 가짐
• 서로를 신뢰하며 공경한다.
• 대화를 논쟁으로 생각하지 않는다.
• Winner 와 Looser가 생겨서는 안된다.
• 코드에 대한 지나친 소유욕을 가지지 않는다.
• 우리는 ONE TEAM 이다.
34. PP 유의 사항
• 혼자 너무 오래 코딩 하지 말 것. 돌아가면서 한다.
• 즐겨라.
• 믿음을 가질 것.
• 자존심을 세우지 말자
• 옆에 있는 사람을 놔둔채 혼자 달리지 말자
• 자신보다 경혐이 많은 사람/적은 사람과 짝이 되어 본다
• 코드는 짝프로그래밍 하는 두 사람의 어느 누구 것도 아니다.
35. C++ PP 진행 방법
• 짝은 매번 랜덤으로 결정 한다.
• 짝은 매일 교체 한다. (4시간)
• 1시간마다 역할을 교대 한다.
• 실력이 뛰어난 사람, 실력이 부족한 사람과 같이 작업하
는 경험을 가진다.
36.
37. 수업 평가
•기말 프로젝트 평가 : 90%
• 기타(과제, 퀴즈,…) : 10%
10%는 가산점. 과제, 퀴즈등을 우수하게 수행한 경우의 + 점수
38. 개인 프로젝트
• 수업중의 BattleShip Game을 개인 프로젝트로
완성하여 제출
• BattleShip 알고리즘을 적절하게 개선하여 C++
로 구현하여 완성
• 수업중의 짝 프로그래밍 코드와 별개 프로젝트
39. 개인 프로젝트
• Optional
• BattleShip이 아닌 자신이 만들고 싶은 콘솔 게
임 프로젝트를 제작 가능
• 게임의 구현도에 따른 가산점
48. BattleShip Game Rule
• 자신의 배를 임의의 위치에 배치
• 턴 순서를 결정
• 공격 턴에 상대방의 좌표를 지정
• 수비측은 결과를 통보
• 빗나감, 히트(종류는 알려주지 않는다)
• 격추 – 배의 영역이 모두 히트 하였을 때, 종류도 알려준다.
• 턴을 교대하면서 상대방의 모든 배를 격추 시키면 승리!