아이패드 플레이그라운드로 Swift 코딩하기 - 코딩 배우기 1 (명령편)

Swift를 배울 수 있는 플레이그라운드가 생각보다 재미있고 신기합니다. 현재 코딩 배우기 1을 진행하고 있는데 이 중에서 가장 처음 배우는 명령편을 공유합니다. 가장 기본이 되는 부분으로 잘 숙지하고 있으면 나중에 도움이 될 수도 있을 것 같아서 열심히 따라서 미션을 클리어 해보겠습니다.

 

 

 

코딩 배우기 1의 명령편에는 총 7개의 미션이 있습니다. 차근차근 하나씩 실행해보겠습니다.

명령 실행하기

 

 

 

첫번째 과제의 목표는 Swift 명령을 사용해서 보석을 수집하도록 Byte라는 캐릭터를 실제로 움직여 보는 것입니다. 아래 결과 화면에서 Byte가 서 있는 곳에서 보석까지의 거리를 확인해보고 이동 명령어와 수집 명령어를 숙지합니다. 총 3칸 이동 후 수집하면 보석을 획득할 수 있겠네요.

 

 

 


moveForward()

moveForward()

moveForward()

collectGem()

 

첫 번째 미션이어서 굉장히 간단하게 클리어 했습니다.

 새로운 명령 추가하기

 

 

 

두번째 미션은 새로운 명령어 추가하기 입니다. 앞선 과제에서 이동과 수집 외에 추가적으로 왼쪽으로 돌기 명령을 추가하여 방향 전환을 해보도록 하겠습니다. 보석까지 가려면 앞으로 2칸 이동 후 왼쪽으로 돌고 다시 2칸 앞으로 이동 후 수집하면 되겠습니다. 

 

 


moveForward()

moveForward()

turnLeft()

moveForward()

moveForward()

collectGem()

 

첫 번째 미션에 추가로 turnLeft()명령어가 추가 되었네요. 찬찬히 생각하고 명령어를 넣고 내 코드 실행 누르면 미션 클리어 됩니다.

 스위치 작동시키기

 

 

 

다음 미션은 스위치 작동시키기 입니다. 스위치를 켜는 명령어를 추가적으로 숙지하고 보석 수집 및 스위치를 키면 미션을 완료할 수 있습니다. 먼저 보석까지 가려면 앞으로 2칸 이동 후 왼쪽으로 돌고 다시 앞으로 1칸 이동 후 수집합니다. 그리고 스위치까지 가려면 앞으로 1칸 이동 후 왼쪽으로 돌고 다시 앞으로 2칸 이동합니다. 그리고 스위치를 켜면 미션을 클리어 할 수 있습니다.

 

 


moveForward()

moveForward()

turnLeft()

moveForward()

collectGem()

moveForward()

turnLeft()

moveForward()

moveForward()

toggleSwitch()

 

차근 차근 생각하고 명령어들을 입력하면 어렵지 않게 과제를 완수 할 수 있습니다.

 포털연습

 

 

 

다음 과제는 지금까지 배워웠던 명령어들을 활용하고 과제에 주어진 조건 중 포털을 이용하여 미션을 완수하는 것입니다. 포털은 다른 포털로 이동 가능하며 포털 이동 후 이동 방향은 동일하다는 조건이 생성 된 상태에서 미션을 완수해야 합니다. 

 

 

 


moveForward()

moveForward()

moveForward()

turnLeft()

moveForward()

moveForward()

toggleSwitch()

moveForward()

moveForward()

turnLeft()

moveForward()

moveForward()

collectGem()

 

먼저 과제를 수행하기 위해 결과를 예상해보고 필요한 명령어들을 적절한 순서에 따라 배치하면 쉽게 해결할 수 있습니다.

 버그 찾고 수정하기

 

 

 

다음 과제는 버그를 찾는 디버깅 작업을 연습해 볼 수 있는 과제입니다. 이 과제는 처음에 명령어들이 입력되어 있으며 입력된 명령엉대로 실행을 하면 과제를 클리어할 수 없는 버그가 있는 상태입니다. 이 버그가 있는 상태에서 명령어를 수정하거나, 배열을 달리하여 미션을 해결하는 과제로 실제 버그를 찾는 과정을 연습해볼 수 있습니다.

 

 


moveForward()

moveForward()

turnLeft()

moveForward()

collectGem()

moveForward()

toggleSwitch()

 

기존 입력되어 있던 명령어를 위와 같이 수정하면 미션을 클리어할 수 있습니다.

 버그 잡기 연습

 

 

 

이번 과제도 위의 과제와 같이 잘못된 명령어와 순서를 바로 잡아 버그를 해결하는 과정을 연습합니다. 위의 과제보다 더 많은 명령어가 사용되니 주의해서 버그를 찾고 수정해보겠습니다.

 

 


moveForward()

turnLeft()

moveForward()

moveForward()

toggleSwitch()

moveForward()

moveForward()

moveForward()

moveForward()

collectGem()

 

차근차근 하나씩 수정하고 코드를 실행해서 결과값을 확인할 때마다 짜릿함이 있습니다. 생각보다 재미있게 과제를 수행하고 결과를 바로 바로 확인할 수 있으니 굉장히 직관적이고 게임을 하는것 처럼 재미가 있어 시간 가는 줄 모르겠습니다.

 가장 짧은 경로

 

 

 

코딩 배우기 1에서 마지막 과제인 가장 빠른 경로 찾기 입니다. 지금까지 배웠던 명령어나 디버깅 기술을 활용하여 아래 주어진 환경에서 가장 빠른 길을 찾는 과제입니다. 가장 빠른 경로를 찾고 그에 맞는 명령어를 입력 해 과제를 해결해 보겠습니다. 

 

 


moveForward()

moveForward()

moveForward()

collectGem()

moveForward()

moveForward()

moveForward()

moveForward()

toggleSwitch()

 

이렇게 입력하면 가장빠른 경로를 찾았다고 나오고 명령편 과제들을 모두 완수 하였습니다. 차근차근 게임하듯이 미션을 수행하며 코드를 배워가는 플레이그라운드 다음에는 함수편을 진행해 보도록 하겠습니다.

댓글

Designed by JB FACTORY