32
C++ RAPA 박민근 강의 내용 및 진행 방법

[RAPA/C++] 1. 수업 내용 및 진행 방법

Embed Size (px)

Citation preview

Page 1: [RAPA/C++] 1. 수업 내용 및 진행 방법

C++

RAPA

박민근

강의 내용 및 진행 방법

Page 2: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 3: [RAPA/C++] 1. 수업 내용 및 진행 방법

과학자는배우기 위해 개발하지만

엔지니어는 개발하기 위해 배운다

- 프레드 브룩스

Page 4: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 5: [RAPA/C++] 1. 수업 내용 및 진행 방법

• 객체지향 프로그래밍을이해한다.

• C++로객체지향 프로그래밍을

작성할수 있다.

• C++로간단한콘솔창게임을 제

작할수 있다.

Page 6: [RAPA/C++] 1. 수업 내용 및 진행 방법

• C++로 필요한 자료 구조와 알고리즘을

작성할 수 있다.

• 게임 개발에 필요한 알고리즘을 C++로

구현할 수 있다.

Page 7: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 8: [RAPA/C++] 1. 수업 내용 및 진행 방법

물론…

전부 다 중요하지만...

Page 9: [RAPA/C++] 1. 수업 내용 및 진행 방법

• 객체 지향적으로 클래스를 제작하고, 상속,

다형성등…

객체 지향 프로그래밍 기법을 활용한다.

• 포인터를 이용하여 메모리의 할당과 해제,

관리를 이해 한다.

• C++ 디버깅!

Page 10: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 11: [RAPA/C++] 1. 수업 내용 및 진행 방법

•학습

•C++ 개념

•C++ 자료구조 & 알고리즘

•코딩 인터뷰 시험 문제 풀이

오전 (2시간)

•프로젝트 제작

•BattleShip Game (C++ 콘솔 게임)

•배운 개념과 지식을 실제로 활용

•실제 게임을 설계 및 구현하면서 학습

•학습한 내용들을 이해하여 적용

오후 (3시간)

Page 12: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 13: [RAPA/C++] 1. 수업 내용 및 진행 방법

Flip Learnging

Project Based

Pair

Programming

Page 14: [RAPA/C++] 1. 수업 내용 및 진행 방법

강의 안해!!!

Page 15: [RAPA/C++] 1. 수업 내용 및 진행 방법

1. Flipped Learning - 무엇인가?

출처: http://www.washington.edu/teaching/teaching-resources/flipping-the-classroom/flippedclassroomuwcolors-1/

Page 16: [RAPA/C++] 1. 수업 내용 및 진행 방법

2. Flipped Learning - 어떤원리인가?

Page 17: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 18: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 19: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 20: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 21: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 22: [RAPA/C++] 1. 수업 내용 및 진행 방법

Project Based Learning

• C++을 배워서 게임을 만드는 것이 아니라,

게임을 만들기 위해서 C++을 배운다.

• BattleShip Game 프로젝트를 제작하면서,

필요한 C++을 구문들을 이해해 간다.

Page 23: [RAPA/C++] 1. 수업 내용 및 진행 방법

Project Based Learning

• 수업 내에서 진행하는 BattleShip Game

프로젝트가 곧 실습 과제가 된다.

•학기가 끝났을 때, 전원 BattleShip Game

프로젝트를 이해하고, 개발할 수 있다.

Page 24: [RAPA/C++] 1. 수업 내용 및 진행 방법

Project Based Learning

• How, What이 아닌, Why를 공부한다.

• 이것을 왜 공부해야 하는지, 이것을 어디에

사용해야 하는지에 중점을 둔다.

Page 25: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 26: [RAPA/C++] 1. 수업 내용 및 진행 방법
Page 27: [RAPA/C++] 1. 수업 내용 및 진행 방법

Pair Programming

• 실습은 짝 프로그래밍으로 진행된다.

• 2인 1조가 되어 하나의 PC로 같이 프로그

래밍 한다.

• 한사람은 드라이버, 한사람은 내비게이터가 된다.

Page 28: [RAPA/C++] 1. 수업 내용 및 진행 방법

Pair Programming의 목적 및 효과

• 코드의 품질을 향상 시킨다.

• 개발에 대하 집중력을 높인다.

• 팀 내 커뮤니케이션을 증진시킨다.

• 지속적인 코드 리뷰가 될 수 있다.

• 협업을 통해 서로가 서로를 발전 시킬 수 있다.

• 개발이 좀 더 즐거워 질 수 있다.

Page 29: [RAPA/C++] 1. 수업 내용 및 진행 방법

PP 기본 진행방식

• 1대의 PC에서 두명의팀원이같이작업을진행한다.

• 키보드와마우스를잡고있는사람이 ‘드라이버’, 옆에 앉아서함

께 작업하는사람을 ‘네비게이터’라고 한다.

• 일반적으로네비게이터가주도적으로작업을진행하게된다.

• 네비게이터는자신이할려는일을이야기하고, 드라이버는질문

과 제안을한다.

• 1시간마다역할을교체한다.

Page 30: [RAPA/C++] 1. 수업 내용 및 진행 방법

PP 기본 마음가짐

• 서로를 신뢰하며 공경한다.

• 대화를 논쟁으로 생각하지 않는다.

• Winner 와 Looser가 생겨서는 안된다.

• 코드에 대한 지나친 소유욕을 가지지 않는다.

• 우리는 ONE TEAM 이다.

Page 31: [RAPA/C++] 1. 수업 내용 및 진행 방법

PP시에절대하지 말아야 할것!

짜증!

Page 32: [RAPA/C++] 1. 수업 내용 및 진행 방법

PP 유의 사항

• 혼자너무오래 코딩하지말 것. 돌아가면서한다.

• 즐겨라.

• 믿음을가질것.

• 자존심을세우지말자

• 옆에있는사람을놔둔채혼자달리지말자

• 자신보다경혐이많은사람/적은사람과짝이 되어본다

• 코드는짝프로그래밍하는두 사람의어느누구것도 아니다.