코드를 실행했는데 결과 창은 보이지 않고, 수업에서는 곧바로 앱을 만들라고 합니다.
가장 빠른 해결책은 Xcode 27의 #Playground에서 작은 Swift 코드를 먼저 실행하는 것입니다. #Playground는 문법, 계산, 변수 결과를 확인하는 연습 공간입니다. 완성된 아이폰 앱, 시뮬레이터 빌드, 실제 기기 테스트를 대신하지는 않습니다. 호환되는 맥이 없다면 원격 Apple silicon 맥에서 첫 수업을 진행한 뒤 장기 구매 여부를 판단할 수 있습니다.
이 글은 처음 Swift를 배우며 명령줄보다 눈에 보이는 결과를 원하는 학생을 위한 안내서입니다. 윈도우, 크롬북, 아이패드 또는 설치가 제한된 학교 컴퓨터를 사용하는 학습자도 포함합니다. 예전 플레이그라운드 안내를 읽었지만 #Playground 매크로와 정식 Xcode 프로젝트의 차이를 모르는 경우에도 맞습니다.
마지막 업데이트: 2026년 9월 11일. Xcode 27 베타의 환경 조건과 알려진 문제는 애플 개발자 공식 최신 릴리스 노트에서 다시 확인해야 합니다. 베타에서는 화면과 동작이 바뀔 수 있습니다.
[ SECTION_01 ] 시작 전에 #Playground의 역할을 구분합니다
Xcode 27의 #Playground와 Swift Playground는 어떻게 다른가요?
Xcode 27의 #Playground는 Xcode 파일 안에서 코드 조각을 실행하고 결과를 살펴보는 흐름입니다. Swift Playground는 학습용 앱과 콘텐츠에 가까운 별도 경험입니다. 애플의 Swift Playgrounds 공식 안내도 두 경험을 같은 도구로 설명하지 않습니다.
초보자는 다음처럼 구분하면 쉽습니다.
#Playground는 수업 중 계산을 확인하는 연습장입니다.- Swift 파일은 코드를 적는 공책입니다.
- Canvas는 결과를 옆에서 보여 주는 즉시 확인 창입니다.
- 정식 앱 프로젝트는 여러 파일과 화면을 관리하는 완성 과제용 작업장입니다.
애플은 Xcode 27 베타에서 #Playground와 Canvas를 이용한 코드 실행 흐름을 안내하고 있습니다. 다만 Apple silicon과 macOS 조건은 설치 전에 Xcode 27 베타 릴리스 노트에서 현재 항목을 확인해야 합니다. 오래된 안내의 설치 조건을 그대로 믿으면 설치 단계에서 막힐 수 있습니다.
맥이 없어도 #Playground로 Swift를 배울 수 있나요?
가능합니다. 단, Xcode 27을 실행할 수 있는 macOS 환경이 필요합니다. 윈도우에 Xcode를 일반 프로그램처럼 설치하는 방법은 제공되지 않습니다. 호환되는 맥을 직접 사용하거나 원격 맥에 접속해야 합니다.
현재 컴퓨터가 수업 자료 열기와 인터넷 사용만 가능하고 Xcode 설치가 차단되어 있다면, 학교 보안 설정을 억지로 바꾸지 않는 편이 안전합니다. 짧은 기간만 Swift를 확인하려는 학생은 학생용 맥 대여 환경을 먼저 살펴보고 실제 수업에 필요한지 판단할 수 있습니다.
[ SECTION_02 ] 첫 번째 단계: 지워도 되는 연습 공간을 만듭니다
처음부터 수업 제출용 앱 파일을 수정하지 않습니다. 이름에 Swift 연습처럼 용도를 적은 별도 공간을 만들고, 문제가 생겨도 삭제할 수 있게 둡니다.
Xcode를 연 뒤에는 다음 순서로 확인합니다.
- Xcode 27을 실행하고 새 연습용 파일 또는 프로젝트를 엽니다.
- Swift 코드를 입력하는 파일이 보이는지 확인합니다.
- 코드가 속한 대상을 살펴봅니다.
- Canvas가 닫혀 있으면 Xcode의 Canvas 표시 명령으로 엽니다.
- Xcode와 macOS 버전을 메모합니다.
- 연습 파일을 저장한 뒤 한 번 닫았다가 다시 엽니다.
파일은 공책, 대상은 이 공책을 검사할 수업, Canvas는 교사가 옆에서 결과를 적어 주는 공간에 비유할 수 있습니다. 이 구조를 먼저 이해하면 파일을 잘못 열어 결과가 나오지 않는 실수를 줄일 수 있습니다.
애플의 Xcode 프로젝트 파일과 폴더 관리 문서는 파일이 프로젝트에 포함되는 방식과 관리 위치를 설명합니다. 파일을 Finder에서 열었는지, Xcode 프로젝트 안에서 열었는지도 구분해야 합니다.
[ SECTION_03 ] 두 번째 단계: 가장 작은 코드를 실행합니다
처음 연습에는 화면이나 패키지를 넣지 않습니다. 상수 하나, 계산 하나, 출력 하나면 충분합니다.
let firstNumber = 3
let secondNumber = 4
let total = firstNumber + secondNumber
print(total)
이 코드는 total에 계산 결과를 담고 print로 결과를 요청합니다. 학습 목표는 Swift 문법 전체를 익히는 것이 아닙니다. 코드가 저장되고 실행되며 결과가 보이는지 확인하는 것입니다.
Canvas가 보이지 않는다면 먼저 Canvas를 다시 엽니다. 실행이 멈춘 상태라면 재개 명령을 사용합니다. 애플의 Canvas 상호작용 안내는 Canvas에서 결과를 확인하고 다시 실행하는 기본 흐름을 설명합니다.
성공 기준은 다음과 같습니다.
- 같은 코드를 다시 실행할 수 있어야 합니다.
- 숫자 하나를 바꾼 뒤 결과도 함께 바뀌어야 합니다.
- 전체 앱 화면이나 시뮬레이터를 만들지 않아도 결과를 확인할 수 있어야 합니다.
#Playground는 선생님이 코드 옆에 바로 메모를 남기는 것처럼 결과를 가까이 보여 줍니다. 그래서 첫 Swift 수업의 계산, 문자열, 작은 조건 확인에 잘 맞습니다.
[ SECTION_04 ] 결과가 없을 때는 낮은 위험부터 확인합니다
#Playground 코드가 Canvas에 표시되지 않는 이유는 무엇인가요?
원인은 코드 오류 하나로만 정해지지 않습니다. 아래 순서로 확인하면 불필요한 삭제와 재설치를 피할 수 있습니다.
-
파일 위치를 확인합니다.
Xcode 안에서 프로젝트 또는 연습 파일을 열었는지 봅니다. 브라우저에서 내려받은 원본을 미리보기로 연 경우에는 실행 대상이 아닐 수 있습니다. 파일이 정상적으로 열렸는지 확인한 뒤 다음 단계로 갑니다. -
Canvas 표시 상태를 확인합니다.
코드가 실행되어도 Canvas가 닫혀 있으면 결과가 보이지 않습니다. Canvas를 다시 표시하고 일시 중지된 실행을 재개합니다. Canvas 자체가 나타나지 않으면 코드보다 화면 상태를 먼저 점검합니다. -
#Playground구조를 확인합니다.
해당 기능은 Xcode 27 베타에서 안내된 구조를 따라야 합니다. 오래된 글의 매크로나 파일 형식을 임의로 섞지 않습니다. 코드 조각 실행에 관한 애플 공식 문서의 예시와 현재 파일 구조를 비교합니다. -
대상과 파일 연결을 확인합니다.
코드 파일이 현재 대상에 포함되지 않았거나 잘못된 실행 위치를 가리킬 수 있습니다. 파일 선택 화면과 대상 설정을 확인하고, 해당 파일이 연습 공간에 속하는지 봅니다. -
코드 자체를 줄입니다.
외부 패키지, 여러 파일, 복잡한 화면 코드를 잠시 제거합니다. 계산과 출력만 남겨 다시 실행합니다. 이 상태에서도 결과가 없으면 환경이나 베타 문제를 의심할 수 있습니다. -
멈출 지점을 정합니다.
오류 메시지를 저장하고 Xcode 버전과 macOS 버전을 기록합니다. 원인을 모른 채 캐시 삭제, 보안 기능 해제, 출처를 모르는 복구 스크립트 실행은 하지 않습니다.
주의: 베타에서 보고된 알려진 문제와 학생 코드의 오류는 서로 다른 문제입니다. 애플의 Xcode 27 베타 공식 릴리스 노트에서 현재 알려진 문제인지 먼저 확인해야 합니다. 베타 동작을 정식 버전의 안정적인 보장처럼 받아들이면 안 됩니다.
[ SECTION_05 ] 세 번째 단계: 코드 조각을 정식 프로젝트로 옮깁니다
#Playground에서 계속 연습해도 되는 경우는 계산, 문자열 처리, 작은 조건문처럼 결과가 한눈에 보이는 작업입니다. 다음 조건이 생기면 정식 Xcode 프로젝트로 이동합니다.
- 화면을 만들거나 SwiftUI 미리보기를 사용해야 하는 경우
- 여러 Swift 파일을 함께 관리해야 하는 경우
- 패키지나 외부 의존성이 필요한 경우
- 시뮬레이터에서 앱을 빌드해야 하는 경우
- 디버거와 앱 생명주기를 확인해야 하는 경우
- 실제 아이폰에서 테스트해야 하는 경우
#Playground에서 iOS 앱을 바로 만들 수 있나요?
완성된 iOS 앱을 바로 만드는 용도로 사용하지 않는 편이 좋습니다. 코드 아이디어를 검증할 수는 있지만 앱 화면, 설정, 여러 파일, 빌드 대상, 시뮬레이터 테스트는 정식 앱 프로젝트에서 다시 구성해야 합니다. 애플의 Xcode 앱 프로젝트 생성 안내도 앱용 프로젝트를 시작하는 별도 흐름을 설명합니다.
코드를 복사했다고 이전 작업이 끝난 것은 아닙니다. 다음 항목을 다시 확인해야 합니다.
- 입력값이 연습 때와 같은지 확인합니다.
- 필요한 변수와 파일이 모두 옮겨졌는지 봅니다.
- 패키지와 권한이 새 프로젝트에 맞는지 확인합니다.
- 앱 빌드 결과가 연습 결과와 같은지 비교합니다.
- 시뮬레이터 또는 실제 기기에서 다시 실행합니다.
예를 들어 total 계산이 성공했다고 해서 버튼을 누를 때 계산되는 앱까지 완성된 것은 아닙니다. 입력 화면, 버튼 동작, 상태 저장, 오류 처리를 새 프로젝트에서 별도로 연결해야 합니다.
[ SECTION_06 ] 학습 목표별 선택 체크리스트
아래 목록에서 현재 조건에 해당하는 항목을 직접 표시합니다. 체크한 결과에 따라 사용할 환경을 결정하면 됩니다.
-
[ ] Swift 코드 조각, 계산, 문자열만 연습합니다.
→#Playground를 계속 사용합니다. -
[ ] 변수의 값과 작은 실행 결과를 바로 확인하고 싶습니다.
→ Xcode 27의#Playground와 Canvas를 선택합니다. -
[ ] SwiftUI 화면이나 앱 화면을 만들 예정입니다.
→#Playground를 졸업하고 정식 Xcode 앱 프로젝트를 만듭니다. -
[ ] 여러 Swift 파일, 패키지, 외부 의존성이 필요합니다.
→ 코드를 복사하는 데서 멈추지 말고 정식 프로젝트에서 다시 구성합니다. -
[ ] 시뮬레이터나 실제 아이폰에서 앱을 검사해야 합니다.
→ 앱 프로젝트를 새로 만들고 빌드와 테스트를 진행합니다. -
[ ] 현재 컴퓨터에 호환되는 macOS가 없습니다.
→ Xcode를 억지로 설치하지 말고 원격 Apple silicon 맥을 수업 기간에 맞춰 사용합니다. -
[ ] 학교 컴퓨터의 설치 권한이 제한되어 있습니다.
→ 보안 설정을 우회하지 말고 담당자에게 허용 범위를 문의합니다. -
[ ] 네트워크가 자주 끊기거나 원격 접속을 사용할 예정입니다.
→ 파일을 자주 저장하고, 재접속 뒤 파일과 실행 결과가 남아 있는지 먼저 확인합니다.
판정 방법도 함께 기억합니다. 첫 번째와 두 번째 항목만 체크했다면 #Playground가 적합합니다. 세 번째부터 다섯 번째 항목을 체크했다면 정식 Xcode 프로젝트가 필요합니다. 여섯 번째부터 여덟 번째 항목을 체크했다면 환경 접근 방법과 저장 절차를 먼저 정해야 합니다.
[ SECTION_07 ] 첫 수업이 끝난 뒤 환경을 다시 검사합니다
같은 연습 파일로 다음 항목을 순서대로 재검사합니다.
- 프로젝트를 닫았다가 다시 열 수 있는지 확인합니다.
- 숫자나 문자열을 바꿔 결과가 달라지는지 봅니다.
- 변경 내용을 저장한 뒤 다시 실행합니다.
- Canvas를 닫았다가 다시 표시합니다.
- 원격 환경이라면 연결이 끊긴 뒤 다시 접속했을 때 파일이 남아 있는지 확인합니다.
이 검사를 통과하면 다음 Swift 수업으로 넘어가도 됩니다. 아직 #Playground만 필요한 단계라면 앱 프로젝트를 서두를 이유가 없습니다. 반대로 SwiftUI나 iOS 기능을 만들 계획이라면 작은 성공에 머물지 말고 정식 프로젝트에서 다시 시작해야 합니다.
윈도우나 크롬북 환경은 Xcode를 직접 설치할 수 없고, 학교 컴퓨터는 권한과 저장 공간이 제한될 수 있습니다. macOS 가상 환경은 설정과 호환성 확인에 추가 시간이 들 수 있습니다. 이런 방식이 단기 연습에 과할 때는 호환되는 Apple silicon 원격 맥이 더 단순한 선택이 될 수 있습니다.
현재 컴퓨터에서 Xcode 27을 실행할 수 없다면, 이 글의 최소 코드를 원격 맥에서 처음부터 끝까지 실행해 보는 것이 좋습니다. NOVAKVM의 학생용 맥 미니 대여 안내를 확인할 때도 비용만 보지 말고 접속 방식, 저장 절차, 수업 기간을 함께 비교해야 합니다. 첫 실행과 재접속 후 저장까지 확인한 뒤 SwiftUI와 iOS 개발을 계속할지 결정하면 장기 대여나 기기 구매를 서두르지 않아도 됩니다.