> For the complete documentation index, see [llms.txt](https://redbrick.gitbook.io/dreamclass-wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://redbrick.gitbook.io/dreamclass-wiki/dreamclass/undefined.md).

# 과정 소개

### 드림클래스 코딩 실습 과정이란?

드림클래스 코딩 실습 과정은 직접 게임과 앱을 만들면서 재미있게 프로그래밍 개념을 학습할 수 있는 과정입니다.

단계별로 차근차근 따라하다 보면 멋진 앱이 하나씩 만들어지고, 그 과정에서 자연스럽게 블록코딩, 자바스크립트, 파이썬 언어를 익히고 창의적 문제해결능력을 기를 수 있어요.

친구들이 만든 게임을 체험해보고 내가 만든 앱과 어떻게 다른지 확인해보면서 더 멋진 앱을 창작해보세요!

### 전체 커리큘럼

드림클래스 코딩 실습 과정 커리큘럼은 총 17개의 과정으로 이루어져 있어요.

<table><thead><tr><th width="77" align="center">순서</th><th width="274" align="center">과정</th><th width="90" align="center">언어</th><th align="center">과정 소개</th></tr></thead><tbody><tr><td align="center">1</td><td align="center">웰컴 투 게임 월드 (1)</td><td align="center">블록코딩</td><td align="center"><p>프로그래밍 개념인 </p><p>이벤트 / 물리 / 변수를 학습하고 </p><p>다양한 종류의 간단한 게임을 만듭니다.</p></td></tr><tr><td align="center">2</td><td align="center">웰컴 투 게임 월드 (2)</td><td align="center">블록코딩</td><td align="center"><p>블록 코딩을 통해 </p><p>변수 / 조건 / 복제를 학습하고 </p><p>다양한 종류의 복잡한 게임을 만듭니다.</p></td></tr><tr><td align="center">3</td><td align="center">웰컴 투 게임 월드 (3)</td><td align="center">블록코딩</td><td align="center"><p>이벤트/좌표/속도의 개념을 이해하고</p><p> 블록코딩으로 다양한 게임을 만듭니다.</p></td></tr><tr><td align="center">4</td><td align="center">내 손으로 게임 만들기 (1)</td><td align="center">JS</td><td align="center"><p>속도 / 배열 / 복제 개념을 활용하여 </p><p>역동적이고 신나는 게임을 만듭니다.</p></td></tr><tr><td align="center">5</td><td align="center">내 손으로 게임 만들기 (2)</td><td align="center">JS</td><td align="center"><p>복제 / 연산자 / 반복문 개념을 활용하여 </p><p>좀 더 복잡하고 재미있는 게임을 만듭니다.</p></td></tr><tr><td align="center">6</td><td align="center">내 손으로 게임 만들기 (3)</td><td align="center">JS</td><td align="center"><p>신호, 이벤트 개념을 활용하여 </p><p>다양한 게임을 만듭니다.</p></td></tr><tr><td align="center">7</td><td align="center">내 손으로 게임 만들기 (4)</td><td align="center">JS</td><td align="center"><p>전역변수와 산술 연산자 개념을 활용하여 </p><p>점수를 획득하는 앱을 만듭니다.</p></td></tr><tr><td align="center">8</td><td align="center">개발 본능! 앱 프로듀서 - 초급</td><td align="center">JS</td><td align="center"><p>다양한 이벤트 명령어를 활용하여</p><p> 앱을 만드는 초급 과정입니다.</p></td></tr><tr><td align="center">9</td><td align="center">개발 본능! 앱 프로듀서 - 중급</td><td align="center">JS</td><td align="center">좌표 / 난수 / 조건 / 변수 개념을 활용하여 앱을 만드는 중급 과정입니다.</td></tr><tr><td align="center">10</td><td align="center">개발 본능! 앱 프로듀서 - 고급</td><td align="center">JS</td><td align="center">함수 / 변수 / 내림 / 신호 개념을 활용하여 앱을 만드는 고급 과정입니다.</td></tr><tr><td align="center">11</td><td align="center">개발 본능! 앱 프로듀서 - 챌린지</td><td align="center">JS</td><td align="center"><p>반복문 / 연산자 / 변수 심화 개념을 </p><p>활용하여 앱을 만드는 챌린지 과정입니다.</p></td></tr><tr><td align="center">12</td><td align="center">개발 본능! 앱 프로듀서 - 파이널</td><td align="center">JS</td><td align="center"><p>개발 본능! 앱 프로듀서의 </p><p>초급부터 챌린지까지 학습한 개념들을 </p><p>모두 활용하여 처음부터 끝까지 </p><p>온전한 게임을 만드는 파이널 과정입니다.</p></td></tr><tr><td align="center">13</td><td align="center">개발 본능! 앱 프로듀서 - 마스터</td><td align="center">JS</td><td align="center"><p>자바스크립트를 이용해 알고리즘과 난수 </p><p>개념을 활용한 게임을 만듭니다.</p></td></tr><tr><td align="center">14</td><td align="center">실생활에서 만난 앱, 여기서 만들다!</td><td align="center">JS</td><td align="center"><p>문자열 / 매개변수 / 객체 개념을 활용하여 실생활에서 접하는 다양한 앱을 만드는 </p><p>심화 학습 과정입니다.</p></td></tr><tr><td align="center">15</td><td align="center">코딩으로 인턴 요원 미션 수행하기 (1)</td><td align="center">Python</td><td align="center"><p>국가 정보 보안국의 인턴이 되어 </p><p>미션을 수행하며 Python 언어를 </p><p>학습하는 초급 과정입니다.</p></td></tr><tr><td align="center">16</td><td align="center">코딩으로 인턴 요원 미션 수행하기 (2)</td><td align="center">Python</td><td align="center"><p>국가 정보 보안국의 인턴이 되어 미션을 </p><p>수행하며 Python 언어를 학습하는</p><p> 중급 과정입니다.</p></td></tr><tr><td align="center">17</td><td align="center">코딩으로 인턴 요원 미션 수행하기 (3)</td><td align="center">Python</td><td align="center"><p>국가 정보 보안국의 인턴이 되어 미션을 </p><p>수행하며 Python 언어를 학습하는 </p><p>고급 과정입니다.</p></td></tr></tbody></table>

###

### 블록코딩 과정 소개

블록코딩 언어에 대해서 알아볼까요?

{% embed url="<https://youtu.be/gvFffHq6j5s>" %}

블록코딩을 배울 수 있는 3개 과정이 있어요.

**웰컴 투 게임월드 (1)**

<figure><img src="/files/pLu7EIGKO4vpBnaus9EL" alt=""><figcaption></figcaption></figure>

웰컴 투 게임 월드 (1)에서는 Touch, Overlap, acceleration, Collide, bounce, gravity, Frame 등 이벤트 및 물리와 관련된 명령어를 학습합니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">열쇠를 찾아라</td><td align="center"><p>이벤트 api를 활용한 </p><p>방탈출 게임 만들기</p></td><td align="center">Touch, Overlap, draggable, Hide, show</td></tr><tr><td>2</td><td align="center">우다다 개썰매</td><td align="center"><p>물리(가속도) api를 활용한 </p><p>썰매 게임 만들기</p></td><td align="center">Touch, accelerationX, Overlap</td></tr><tr><td>3</td><td align="center">에어하키</td><td align="center"><p>물리(충돌) api를 활용한 </p><p>에어하키 만들기</p></td><td align="center">Bind, Collide, bounceX, bounceY</td></tr><tr><td>4</td><td align="center">용감무쌍 스타레인저</td><td align="center">물리(중력과 속도) api를 활용한 피하기 게임 만들기</td><td align="center">gravityY, velocityY, Touch, Overlap</td></tr><tr><td>5</td><td align="center">웨스턴 슈팅</td><td align="center"><p>변수와 조건문을 활용한 </p><p>슈팅 게임 만들기</p></td><td align="center">var, if, Frame</td></tr></tbody></table>

<figure><img src="/files/W0bWbyk3jMDxSA4Ij8kj" alt=""><figcaption></figcaption></figure>

**웰컴 투 게임월드 (2)**

웰컴 투 게임월드 (2)에서는 var, if, else, clone 명령어를 활용하여 변수와 조건문, 복제의 개념을 학습합니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">영차영차</td><td align="center"><p>연산자를 활용한 </p><p>버티기 게임 만들기</p></td><td align="center">var, if</td></tr><tr><td>2</td><td align="center">해저 구만리</td><td align="center"><p>조건문을 활용해 </p><p>심화 방탈출 게임 만들기</p></td><td align="center">if~else</td></tr><tr><td>3</td><td align="center">아장아장 - 비기닝</td><td align="center"><p>블록 코딩으로 조건문을 배우고</p><p>점프 게임 만들기</p></td><td align="center">if~else, Frame</td></tr><tr><td>4</td><td align="center">크레이지 키친</td><td align="center"><p>블록 코딩으로 복사(클론)에 대해 </p><p>배우고, 아케이드 게임 만들기</p></td><td align="center">clone</td></tr></tbody></table>

**웰컴 투 게임월드 (3)**

<figure><img src="/files/b6hfFQqARX94FET87mbt" alt=""><figcaption></figcaption></figure>

웰컴 투 게임월드 (3)에서는 move, moveTo, moveSpeed, velocityX 명령어를 활용하여 좌표로 이동과 속도, 이벤트 명령어를 학습합니다.

<table><thead><tr><th width="85">차시</th><th width="222" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">우주 대탈출</td><td align="center"><p>특정 캐릭터에 닿았을 때, </p><p>원하는 행동을 실행하도록 </p><p>코딩할 수 있습니다.</p></td><td align="center">Animate, Overlap, GoTo, Say</td></tr><tr><td>2</td><td align="center"><p>마법 신전에 </p><p>나타난 몬스터</p></td><td align="center">캐릭터를 따라다니는 물체를 코딩할 수 있습니다.</td><td align="center">Touch, MoveTo, Hide, moveSpeed</td></tr><tr><td>3</td><td align="center">도전! 방탈출 게임</td><td align="center"><p>특정 물체를 터치했을 때 </p><p>발생하는 동작을 </p><p>코딩할 수 있습니다.</p></td><td align="center">Overlap, Hide, Kill, draggable</td></tr><tr><td>4</td><td align="center">바이러스를 피해라</td><td align="center">캐릭터가 화면 밖으로 나갔을 때, 게임이 다시 시작되도록 코딩할 수 있습니다.</td><td align="center">Overlap, velocityY, Out, Collide</td></tr><tr><td>5</td><td align="center">검은 마피아의 도시</td><td align="center"><p>화면을 터치한 방향으로 </p><p>캐릭터가 이동하도록 </p><p>코딩할 수 있습니다.</p></td><td align="center">Touch, flipX, Change, velocityX</td></tr><tr><td>6</td><td align="center">고대 신전의 위기</td><td align="center"><p>게임의 화면 전환 조건을 </p><p>만들어서 게임 실패화면을 </p><p>제작할 수 있습니다.</p></td><td align="center">Change, velocityY, Out, flipX</td></tr><tr><td>7</td><td align="center">유령 퇴치 마법 쏘기</td><td align="center">버튼을 클릭했을 때, 원하는 일이 일어나도록 구현할 수 있습니다.</td><td align="center">Frame, velocityY, Out, Change</td></tr><tr><td>8</td><td align="center">라이트 볼을 찾아라</td><td align="center"><p>캐릭터가 올라탈 수 있는</p><p> 물체를 코딩할 수 있습니다.</p></td><td align="center">Collide, bounceX, bounceY, Kill</td></tr></tbody></table>

### 자바스크립트 과정 소개

자바스크립트 언어에 대해 알아볼까요?

{% embed url="<https://youtu.be/TPiGZwfR_Pw>" %}

자바스크립트를 배울 수 있는 11개 과정이 있어요.

**내 손으로 게임 만들기 (1)**

<figure><img src="/files/T8k3qQnzgLr2ILTciObL" alt=""><figcaption></figcaption></figure>

내 손으로 게임 만들기 (1)에서는 속도 / 배열 / 복제 개념을 활용하여 역동적이고 신나는 게임을 만듭니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">아장아장</td><td align="center"><p>속도와 중력 api를 활용한 </p><p>캐주얼 게임 만들기</p></td><td align="center">setGravityY, setVelocityY, GoTo, onOutStage</td></tr><tr><td>2</td><td align="center">뱀파이어 아카데미</td><td align="center"><p>변수와 속도 api를 활용한 </p><p>타임 어택 게임 만들기</p></td><td align="center">var, setGravityY, setBounceX, setBounceY</td></tr><tr><td>3</td><td align="center"><p>당신의 </p><p>이세계 이름은?</p></td><td align="center"><p>배열과 인덱스를 활용한 </p><p>랜덤 이름 짓기 만들기</p></td><td align="center">var, input, setTextxt</td></tr><tr><td>4</td><td align="center"><p>내 마음대로 </p><p>우주선 조종하기</p></td><td align="center"><p>배열과 조건문을 활용한 </p><p>순발력 게임 만들기</p></td><td align="center">[], getSprite, getRandom, if</td></tr></tbody></table>

**내 손으로 게임 만들기 (2)**

<figure><img src="/files/lbfLRqoUzfsVQNOWcqjj" alt=""><figcaption></figcaption></figure>

내 손으로 게임 만들기 (2)에서는 복제 / 연산자 / 반복문 개념을 활용하여 좀 더 복잡하고 재미있는 게임을 만듭니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">신전을 지켜라</td><td align="center"><p>공격이 조준한 방향으로 </p><p>발사되도록 하는 </p><p>판타지 게임 만들기</p></td><td align="center">clone, onScreenClick, var, turnToMousePointer</td></tr><tr><td>2</td><td align="center">몬스터 소탕하기</td><td align="center">복제를 활용한 디펜스 게임 만들기</td><td align="center">function, clone, if, []</td></tr><tr><td>3</td><td align="center"><p>시민들을 </p><p>구출해내기</p></td><td align="center"><p>복제와 함수를 활용한 </p><p>아케이드 게임 만들기</p></td><td align="center">function, clone, setVelocityX, setGravityY</td></tr><tr><td>4</td><td align="center"><p>아이템을 먹고 </p><p>탈출하자</p></td><td align="center"><p>논리 연산자를 활용한 </p><p>플랫포머 게임 만들기</p></td><td align="center">if, &#x26;&#x26;, var, onOverlap</td></tr><tr><td>5</td><td align="center"><p>레이저를 피해 </p><p>비행기까지</p></td><td align="center"><p>반복문을 활용한 </p><p>피하기 게임 만들기</p></td><td align="center">for, function, clone, goToRandom</td></tr><tr><td>6</td><td align="center">보물찾기</td><td align="center"><p>이중 반복문을 활용한 </p><p>보물 찾기 게임 만들기</p></td><td align="center">for, function, goX, goY, if</td></tr></tbody></table>

**내 손으로 게임 만들기 (3)**

<figure><img src="/files/zchAlYKqaCA3jhHRtWL0" alt=""><figcaption></figcaption></figure>

내 손으로 게임 만들기 (3)에서는 sendSignal, onSignal, playSound,say,onClick 명령어를 활용하여 상호작용하는 이벤트를 이용해 앱을 창작합니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">폭풍우 치는 밤</td><td align="center"><p>다양한 애니메이션을 재생하는 </p><p>스프라이트를 코딩할 수 있습니다.</p></td><td align="center">playAnimation, onClick, sendSignal, onSignal</td></tr><tr><td>2</td><td align="center">락스타</td><td align="center"><p>음악 스프라이트를 재생하는 </p><p>프로젝트를 만들 수 있습니다.</p></td><td align="center">playSound, setFlipX, pauseSound, resumeSound, onSwipe, changeScene</td></tr><tr><td>3</td><td align="center"><p>탐정 사무소를 </p><p>탈출하라!</p></td><td align="center"><p>순차, 이벤트를 활용하여 </p><p>다양한 주제의 방탈출 게임을 </p><p>제작할 수 있습니다.</p></td><td align="center">onClick, sendSignal, onSignal, setDraggable, moveX, onOverlapOnce</td></tr><tr><td>4</td><td align="center">좀비를 피해라</td><td align="center"><p>속도 개념을 활용하여 </p><p>다양한 방향으로 움직이는 </p><p>스프라이트를 코딩할 수 있습니다.</p></td><td align="center">setVelocityX, onOutStage, setVelocityY, setFlipX</td></tr><tr><td>5</td><td align="center"><p>뱀파이어 아카데미</p><p> - 베이직</p></td><td align="center">터치한 스프라이트의 튕김, 속도를 설정할 수 있습니다.</td><td align="center">onFrame, goToMousePointer, getRandom, setCollision, if, ==</td></tr></tbody></table>

**내 손으로 게임 만들기 (4)**

<figure><img src="/files/s1NRO1f1S8a5LqHM48NV" alt=""><figcaption></figcaption></figure>

내 손으로 게임 만들기 (4)에서는 'var'를 이용한 전역 변수 선언, +, -, \*, / 산술연산자 등의 개념을 습득하고 활용하여 다양한 앱을 창작합니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">바운스 볼 - 챌린지</td><td align="center"><p>신호를 받은 물체가 움직이도록 </p><p>코딩할 수 있습니다.</p></td><td align="center">setVelocityX, setGravityY, sendSignal, onSignal</td></tr><tr><td>2</td><td align="center">점핑 타워 - 챌린지</td><td align="center"><p>주인공을 따라 움직이는 </p><p>스프라이트를 코딩할 수 있습니다.</p></td><td align="center">setCollision, setMovable, setVelocityY</td></tr><tr><td>3</td><td align="center">고대 몬스터의 반격</td><td align="center">난수를 활용하여 무작위의 속도로 등장하는 물체를 만들 수 있습니다.</td><td align="center">goToSprite, setVelocityX, setVelocityY, onClick</td></tr><tr><td>4</td><td align="center"><p>로봇 실험실을 </p><p>탈출하라!</p></td><td align="center"><p>상태 변수와 조건문을 활용하여 </p><p>참과 거짓을 판단할 수 있습니다.</p></td><td align="center">onOverlap, if~else, onClick, var</td></tr><tr><td>5</td><td align="center"><p>PIPA: 티라노 </p><p>챔피언십 - 배틀</p></td><td align="center">변수를 활용하여 점수를 표시하는 축구 게임을 만들 수 있습니다.</td><td align="center">sendSignal, changeScene, onSignal, if</td></tr><tr><td>6</td><td align="center"><p>태블릿을 </p><p>떨어트리지마</p><p> - 랭킹전</p></td><td align="center"><p>다른 스프라이트와 장면에서도 </p><p>사용 가능한 전역 변수를 </p><p>만들 수 있습니다.</p></td><td align="center">saveScore, onClick, var</td></tr><tr><td>7</td><td align="center">아장아장 - 랭킹전</td><td align="center"><p>변수와 타이머를 사용하여 </p><p>게임의 랭킹 기능을 </p><p>구현할 수 있습니다.</p></td><td align="center">showRanking, saveScore, var, global</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 초급**

<figure><img src="/files/1u0rDa6a5D0H4Zjb7LQL" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 초급은 다양한 이벤트 명령어를 활용하여 앱을 만드는 초급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">백신을 찾아라</td><td align="center"><p>장애물, 비밀통로를 구현하고 </p><p>주인공을 조종해 맵을 탈출하는 </p><p>게임 만들기</p></td><td align="center">onJoystick, onOverlap, goToSprite</td></tr><tr><td>2</td><td align="center">바운스 볼 - 베이직</td><td align="center"><p>속도와 중력을 활용한 </p><p>고전 게임 바운스 볼 게임 만들기</p></td><td align="center">setVelocityX, setGravityY</td></tr><tr><td>3</td><td align="center">점핑 타워 - 베이직</td><td align="center"><p>충돌과 물리를 활용한 타일을 </p><p>타고 올라가 목적지로 향하는 </p><p>게임 만들기</p></td><td align="center">setCollide, setMovable, setVelocityX</td></tr><tr><td>4</td><td align="center"><p>건강한 습관을 위한 </p><p>하루 조언</p></td><td align="center"><p>신호를 활용한 </p><p>하루 한 문장. 카드를 통해 </p><p>일상을 빛내줄 조언을 </p><p>뽑는 앱 만들기</p></td><td align="center">onClick, sendSignal, setVelocityX</td></tr><tr><td>5</td><td align="center">끄적끄적 낙서장</td><td align="center"><p>펜 기능을 활용하여 </p><p>개성을 뽐낼 수 있는 </p><p>나만의 낙서장 만들기</p></td><td align="center">setPenSize, setPenColor, onScreenClick, if</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 중급**

<figure><img src="/files/oQ0LEbJAxMG7Ex4cHrHJ" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 중급은 좌표 / 난수 / 조건 / 변수 개념을 활용하여 앱을 만드는 중급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">고대 몬스터의 부활</td><td align="center"><p>좌표와 난수를 활용하여 </p><p>실감나는 러닝 효과와 </p><p>전투 스킬을 구현한 게임 만들기</p></td><td align="center">onClick, goToSprite, setVelocityX</td></tr><tr><td>2</td><td align="center"><p>'몬텐노'의 금고를 </p><p>열어라!</p></td><td align="center"><p>다양한 아이템과의 </p><p>상호작용, 장면 전환 및 </p><p>비밀번호 기능을 추가한 </p><p>심화 방탈출 게임 만들기</p></td><td align="center">var, if~else, onClick, input</td></tr><tr><td>3</td><td align="center"><p>태블릿을 </p><p>떨어트리지마</p></td><td align="center"><p>변수와 산술 연산자를 활용한 </p><p>목표물을 터치해 </p><p>떨어지지 않는 게임 만들기</p></td><td align="center">onClick, var, setBounceX, setBounceY, setGravityY</td></tr><tr><td>4</td><td align="center">별들의 속삭임</td><td align="center"><p>타이머와 변수 및 조건문을 </p><p>활용한 별 모으기 게임 만들기</p></td><td align="center">onKey, pauseTimer, saveScore, changeScene</td></tr><tr><td>5</td><td align="center">뮤직플레이</td><td align="center"><p>사운드 명령어를 활용한 </p><p>뮤직플레이 앱 만들기</p></td><td align="center">onClick, if, playSound, pauseSound</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 고급**

<figure><img src="/files/8K834QBVPC1gnjnNToAf" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 고급은 함수 / 변수 / 내림 / 신호 개념을 활용하여 앱을 만드는 고급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center"><p>PIPA: 티라노 </p><p>챔피언십</p></td><td align="center"><p>좌표와 난수를 활용하여 </p><p>2인 축구 게임 만들기</p></td><td align="center">if, setVelocityX, setVelocityY, getRandom</td></tr><tr><td>2</td><td align="center">헌팅 고스트</td><td align="center"><p>함수와 변수를 활용하여 </p><p>연타로 목표물을 잡는 게임 만들기</p></td><td align="center">if, var, clone</td></tr><tr><td>3</td><td align="center">마법 수업</td><td align="center"><p>복제와 변수를 활용하여 </p><p>박진감 넘치는 전투 게임 만들기</p></td><td align="center">clone, onScreenClick, var, setVelocityX, setVelocityY</td></tr><tr><td>4</td><td align="center">봉인된 황금 튜브</td><td align="center"><p>복제와 내림 개념을 활용하여 </p><p>봉인된 황금튜브를 여는 </p><p>게임 만들기</p></td><td align="center">sendSignal, onSignal, onFrame, setText</td></tr><tr><td>5</td><td align="center">로봇의 반격</td><td align="center"><p>변수와 신호를 활용한 </p><p>미사일 게임 만들기</p></td><td align="center">sendSignal, onSignal, setText</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 챌린지**

<figure><img src="/files/5IpAArHk7o4nYgT5EW0J" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 챌린지는 반복문 / 연산자 / 변수 심화 개념을 활용하여 앱을 만드는 챌린지 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">오늘 뭐 먹지?</td><td align="center"><p>난수와 for 반복문을 활용하여 </p><p>점심을 골라주는 앱 만들기</p></td><td align="center">getRandom, goToSprite, for, function</td></tr><tr><td>2</td><td align="center"><p>뽀모도로 </p><p>업무 효율화 앱</p></td><td align="center"><p>비교연산자와 산술연산자, </p><p>if 조건문을 활용하여 </p><p>학습 효율을 높여주는 앱 만들기</p></td><td align="center">onClick, if ~ else if~, startTimer, floor, setText</td></tr><tr><td>3</td><td align="center">글로벌 번역기</td><td align="center"><p>전역변수와 if조건문을 활용한 </p><p>글로벌 번역기 앱 만들기</p></td><td align="center">translate, if else if, onClick, global, setText</td></tr><tr><td>4</td><td align="center">라이어를 찾아라</td><td align="center"><p>전역변수와 배열을 활용한 </p><p>라이어 찾기 앱 만들기</p></td><td align="center">var, if~else</td></tr><tr><td>5</td><td align="center">사다리 타기 게임</td><td align="center"><p>상태변수와 좌표를 활용한 </p><p>사타리타기 게임 만들기</p></td><td align="center">if, getX, moveY, moveX</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 파이널**

<figure><img src="/files/NqQQH43x93jXtlKuclR7" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 파이널은 학습한 개념들을 모두 활용하여 처음부터 끝까지 온전한 게임을 만드는 파이널 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">슈팅 게임 메이커1</td><td align="center"><p>학습한 개념을 활용하여 </p><p>처음부터 끝까지 스스로 </p><p>슈팅 게임 만들기</p></td><td align="center">onFrame, setVelocity, getRandom, changeScene</td></tr><tr><td>2</td><td align="center">슈팅 게임 메이커2</td><td align="center"><p>학습한 개념을 활용하여 </p><p>처음부터 끝까지 스스로 </p><p>리듬 게임 만들기</p></td><td align="center">setCollideScene, setBounce, var, sendSignal, clone</td></tr><tr><td>3</td><td align="center">플랫포머 게임 메이커</td><td align="center"><p>학습한 개념을 활용하여 </p><p>처음부터 끝까지 </p><p>플랫포머 게임 만들기</p></td><td align="center">setGravity, setFlip, global, getTimer</td></tr><tr><td>4</td><td align="center">방탈출 게임 메이커</td><td align="center"><p>학습한 개념을 활용하여 </p><p>처음부터 끝까지 </p><p>방탈출 게임 만들기</p></td><td align="center">onClick, sendSignal, revive, var, input</td></tr><tr><td>5</td><td align="center">아케이드 게임 메이커</td><td align="center"><p>학습한 개념을 활용하여 </p><p>처음부터 끝까지 </p><p>아케이드 게임 만들기</p></td><td align="center">setFlip, sendSignal, setVelocity, function, var, clone</td></tr></tbody></table>

**개발 본능! 앱 프로듀서 - 마스터**

<figure><img src="/files/cx8QgxMGM0mn1fW3Pvwh" alt=""><figcaption></figcaption></figure>

개발 본능! 앱 프로듀서 - 마스터는 getRandom 등 난수 관련 명령어 및 알고리즘의 개념을 활용하여 난이도 있는 앱을 제작하는 마스터 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">성좌의 신탁</td><td align="center"><p>사용자에게서 값을 입력받아 </p><p>처리할 수 있습니다.</p></td><td align="center">setText, var, input</td></tr><tr><td>2</td><td align="center">드래곤 라이더 - 베이직</td><td align="center"><p>사용자 정의 함수와 변수를 </p><p>이용하여 실행 시간에 따라 </p><p>복제본을 만들 수 있습니다.</p></td><td align="center">getRandom, clone, function, setVelocityX, setVelocityY</td></tr><tr><td>3</td><td align="center">헌팅 고스트 챌린지</td><td align="center"><p>스프라이트의 속도를 설정하여 </p><p>게이지를 구현할 수 있습니다.</p></td><td align="center">onFrame, if~else, var, getX</td></tr><tr><td>4</td><td align="center">드래곤 라이더 - 챌린지</td><td align="center"><p>타이머를 이용하여 실행 시간을 </p><p>랭킹에 반영할 수 있습니다.</p></td><td align="center">clone, function, startTimer</td></tr><tr><td>5</td><td align="center">캘린더 만들기</td><td align="center"><p>Date 객체를 사용해 일정과 </p><p>메모를 추가할 수 있는 달력을 </p><p>만들 수 있습니다.</p></td><td align="center">getDate, getFullYear, getMonth</td></tr><tr><td>6</td><td align="center">복불복 게임 만들기</td><td align="center"><p>주사위의 개수를 선택하고 </p><p>선택한 개수만큼 주사위를 굴리는 앱을 만들 수 있습니다.</p></td><td align="center">getRandom, getWorldWidth, getWorldHeight</td></tr><tr><td>7</td><td align="center">루티너리 앱 만들기</td><td align="center"><p>루틴을 추가하고 루틴을 실행한</p><p> 결과를 보여주는 앱을 </p><p>만들 수 있습니다.</p></td><td align="center">getFullYear, const, charAt</td></tr><tr><td>8</td><td align="center">시계 만들기</td><td align="center"><p>디지털 시계를 화면에 보이도록</p><p> 제작할 수 있습니다.</p></td><td align="center">setText, getDate, if</td></tr><tr><td>9</td><td align="center">To do list 만들기</td><td align="center"><p>할일을 입력하고 완료한 일은 </p><p>지워지는 앱을 만들 수 있습니다.</p></td><td align="center">clone, goY, input, getY, if</td></tr></tbody></table>

**실생활에서 만난 앱, 여기서 만들다!**

<figure><img src="/files/YHoif0Awne3kkSys3bMV" alt=""><figcaption></figcaption></figure>

실생활에서 만난 앱, 여기서 만들다!는 문자열 / 매개변수 / 객체 개념을 활용하여 실생활에서 접하는 다양한 앱을 만드는 심화 학습 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">Guess What</td><td align="center"><p>가변좌표와 문자열, 배열을 </p><p>활용한 단어 맞추기 게임 만들기</p></td><td align="center">toLowercase, includes</td></tr><tr><td>2</td><td align="center">텍스트 메모장</td><td align="center"><p>전역변수와 문자열, 서버 개념을 </p><p>활용한 메모장 앱 만들기</p></td><td align="center">function, push, splice, substring</td></tr><tr><td>3</td><td align="center">상식 퀴즈</td><td align="center"><p>연산자와 배열, 서버 개념을 </p><p>활용하여 자동 채점해주는 </p><p>상식 퀴즈 앱 만들기</p></td><td align="center">if, object, function</td></tr></tbody></table>

### 파이썬 과정 소개

파이썬 언어에 대해 알아볼까요?

{% embed url="<https://youtu.be/jPBEtwUrvoU>" %}

파이썬을 배울 수 있는 3개 과정이 있어요.

**코딩으로 인턴 요원 미션 수행하기 (1)**

<figure><img src="/files/IDLGm2pnOYcde23vU77f" alt=""><figcaption></figcaption></figure>

코딩으로 인턴 요원 미션 수행하기 (1)은 국가 정보 보안국의 인턴이 되어 미션을 수행하며 Python 언어를 학습하는 초급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center"><p>NIS에 온 걸 </p><p>환영합니다.</p></td><td align="center"><p>파이썬의 출력함수인 print를 </p><p>사용하여 NIS 시스템에 </p><p>접속할 수 있습니다.</p></td><td align="center">print</td></tr><tr><td>2</td><td align="center">해커 조직 빌더버그</td><td align="center"><p>산술연산자와 변수를 사용하여 </p><p>빌더버그 조직의 인공위성을 </p><p>해킹할 수 있습니다.</p></td><td align="center">산술연산자, 변수, int</td></tr><tr><td>3</td><td align="center">극비 파일의 행방</td><td align="center"><p>문자열 자료형을 사용하여 </p><p>손상된 파일 데이터를 </p><p>복구할 수 있습니다.</p></td><td align="center">문자열 자료형, len</td></tr><tr><td>4</td><td align="center">힌트는 어디에</td><td align="center"><p>복구한 파일 데이터에서 </p><p>비밀 작전 날짜에 대한 </p><p>힌트 데이터를 추출할 수 있습니다.</p></td><td align="center">문자열 인덱싱, []</td></tr><tr><td>5</td><td align="center">화이트 노이즈</td><td align="center"><p>문자열 데이터를 가공하여 </p><p>빌더버그 조직의 비밀 작전 날짜를 알아낼 수 있습니다.</p></td><td align="center">문자열 함수, replace</td></tr></tbody></table>

**코딩으로 인턴 요원 미션 수행하기 (2)**

<figure><img src="/files/DNvIrIHXqBR4mvG2JHBb" alt=""><figcaption></figcaption></figure>

코딩으로 인턴 요원 미션 수행하기 (2)는 국가 정보 보안국의 인턴이 되어 미션을 수행하며 Python 언어를 학습하는 중급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">숨겨진 장소</td><td align="center"><p>리스트 요소를 정렬하여 </p><p>빌더버그 조직의 비밀 작전 장소를 알아낼 수 있습니다.</p></td><td align="center">split, sort</td></tr><tr><td>2</td><td align="center">시청 수색 작전</td><td align="center"><p>반복문을 사용하여 시청 건물에 </p><p>설치된 폭발물 감지 센서 상태를</p><p> 빠르게 확인할 수 있습니다.</p></td><td align="center">반복문, for, range</td></tr><tr><td>3</td><td align="center">폭탄을 찾아라</td><td align="center"><p>조건문을 사용하여 폭발물이 </p><p>설치된 곳이 몇 층인지 </p><p>알아낼 수 있습니다.</p></td><td align="center">if, else, 비교연산자</td></tr><tr><td>4</td><td align="center">해체 매뉴얼</td><td align="center"><p>논리연산자를 사용하여</p><p> 폭발물 해체 프로그램을 </p><p>만들 수 있습니다.</p></td><td align="center">elif, 논리연산자</td></tr></tbody></table>

**코딩으로 인턴 요원 미션 수행하기 (3)**

<figure><img src="/files/IvVFdZmccbjCigyJPeNO" alt=""><figcaption></figcaption></figure>

코딩으로 인턴 요원 미션 수행하기 (3)는 국가 정보 보안국의 인턴이 되어 미션을 수행하며 Python 언어를 학습하는 고급 과정입니다.

<table><thead><tr><th width="76">차시</th><th width="176" align="center">차시명</th><th align="center">차시 주요 내용</th><th align="center">주요 명령어</th></tr></thead><tbody><tr><td>1</td><td align="center">사라진 용의자</td><td align="center"><p>포함연산자를 사용하여 </p><p>시청에 출입한 명단에서 </p><p>중복된 인원을 분류할 수 있습니다.</p></td><td align="center">not in, range, len, in, if, for</td></tr><tr><td>2</td><td align="center">다크넷의 입구</td><td align="center"><p>2진수를 문자열로 변환하여 </p><p>다크넷의 비밀번호를 알아내</p><p> 접속할 수 있습니다.</p></td><td align="center">bin, if, elif else, int, len, print, end, for</td></tr><tr><td>3</td><td align="center"> 일급 비밀 데이터</td><td align="center"><p>2차원 리스트를 사용하여 </p><p>저장된 해커 조직 명단을 </p><p>리뉴얼하고 신입 명단을 </p><p>찾아낼 수 있습니다.</p></td><td align="center">append, while, 리스트[인덱스][내부인덱스], len, print</td></tr><tr><td>4</td><td align="center">퍼블릭 인터레스트</td><td align="center"><p>이중 반복문을 사용하여 </p><p>트렌스포지션 암호를 </p><p>해독할 수 있습니다.</p></td><td align="center">append, range, ==, len, print, for</td></tr><tr><td>5</td><td align="center">코드네임 블랙</td><td align="center"><p>리스트의 요소를 문자열로 </p><p>변환하여 프로젝트의 비밀을 </p><p>알아낼 수 있습니다.</p></td><td align="center">append, range, join, ==, len, print, if, for</td></tr><tr><td>6</td><td align="center">증권거래소 해킹 사건</td><td align="center"><p>딕셔너리 자료형을 사용하여 </p><p>증권거래소의 로그 데이터를</p><p> 분석할 수 있습니다.</p></td><td align="center">append, range, 사전객체[key], ==, len, print, if, for</td></tr><tr><td>7</td><td align="center">가상 IP 서버</td><td align="center"><p>딕셔너리 함수로 FPN 서버를</p><p> 분석하여 범인의 진짜 IP를 </p><p>알아낼 수 있습니다.</p></td><td align="center">append, not in, values, range, items, len, print, in, keys, if, for</td></tr><tr><td>8</td><td align="center">IP를 추적하라</td><td align="center"><p>문자열 인덱싱으로 IP를 추출하고 지도상의 위치를 검색하여 </p><p>추적할 수 있습니다.</p></td><td align="center">print, ==, get, if, for</td></tr><tr><td>9</td><td align="center">검은 돈의 행방</td><td align="center"><p>최대값 탐색 함수를 사용하여 </p><p>증권거래소에서 입수한 내역에서 수상한 거래 내역을 </p><p>찾아낼 수 있습니다.</p></td><td align="center">append, range, ==, len, print, max, for</td></tr><tr><td>10</td><td align="center">사라진 주인</td><td align="center"><p>문자열 구성 판단 함수를 사용하여 계좌 거래 내역의 숨은 암호를 </p><p>찾아낼 수 있습니다.</p></td><td align="center">isalpha, append, print, get, for</td></tr><tr><td>11</td><td align="center">점과 선의 암호</td><td align="center"><p>계좌 내역에 있는 모스 부호를</p><p> 해독하여 비밀 메시지를 </p><p>확인할 수 있습니다.</p></td><td align="center">range, items, ==, len, print, zip, for</td></tr><tr><td>12</td><td align="center">범인의 얼굴</td><td align="center"><p>함수를 사용하여 CCTV 영상 기록 데이터를 분석하고 </p><p>범인의 몽타주를 찾을 수 있습니다.</p></td><td align="center">range, def, ==, lef, print, if, for</td></tr><tr><td>13</td><td align="center">프로젝트 : MONA</td><td align="center">집합 데이터를 사용하여 MONA 프로젝트에 참여한 기관을 알아내 정체를 밝힐 수 있습니다.</td><td align="center">&#x26;, set, ==, |, print</td></tr><tr><td>14</td><td align="center">연구소 탈출</td><td align="center"><p>반복 흐름 제어문을 사용하여</p><p> 블랙아웃된 연구소에서 </p><p>탈출하도록 출구 방향을 </p><p>알아낼 수 있습니다.</p></td><td align="center">append, while, continue, len, break, print, if</td></tr><tr><td>15</td><td align="center">최단 경로 분석</td><td align="center"><p>요소를 제거하여 도망치는 범인을 검거하기 위한 최단 경로를 </p><p>추적할 수 있습니다.</p></td><td align="center">pop, range, def, len, print, list, get, for</td></tr></tbody></table>
